前端工程師CSS小課:float浮動屬性

前端工程師CSS小課:float浮動屬性
前端工程師CSS小課:float浮動屬性

正在學習前端工程師課程的同學過來~CSS系列課程登場嘍!!今天要介紹的是float浮動屬性!

CSS 的 float (浮動) 屬性

CSS 的 float (浮動) 屬性是前端工程師在做網頁排版時,必用的基本語法之一。使用 CSS float 浮動屬性,可將一個元素往左移或是往右移,並允許其他元素圍繞它(例如文繞圖、圖繞文等)。

float 浮動屬性的使用時機

使用 <div> 等區塊元素排版時,預設的排列方式都是由左至右、由上至下。但若想要讓多個區塊並排、或是二欄、三欄等多欄網頁前端排版時,就需要使用 float 屬性。

如下方例子,若我們使用一般的 div 區塊元素時,則所有的區塊就整齊的由左上出來,一個 <div> 區塊就佔用了一行。(溫馨提示:可以點擊下例視窗左上方的「HTML」與「CSS」按鈕來查看語法)

See the Pen Float-example-1 by Tedutw (@Tedutw) on CodePen.

承上例,若在 CSS 中加一個「float: left;」,則結果如下(溫馨提示:可以點擊下例視窗左上方的「HTML 」與「CSS」按鈕來查看語法):

See the Pen Float-example-2 by Tedutw (@Tedutw) on CodePen.

這是因為「float」屬性使 div 區塊元素「漂浮」起來,不再形成 div 區塊占滿整行的情況

承上例,若把由左側開始「漂浮」的「float: left;」改成由右側開始「漂浮」的「float: right;」,則所有的區塊就會由右側開始「飄」出來,結果如下(溫馨提示:可以點擊下例視窗左上方的「HTML」與「CSS」按鈕來查看語法):

See the Pen Float-example-3 by Tedutw (@Tedutw) on CodePen.

CSS 浮動屬性有三個參數:left、right 與 none。left 與 right 顧名思義,就是控制區塊由左側還是右側浮出用的,如上方兩個例子所示。而 none 就是不使用浮動參數的意思。

下方是另一個文繞圖排版的例子,就是文字的部分「不」設定 float 屬性,但是在 logo 圖片的部分使用浮動屬性「float:right;」,文字的部分則不使用浮動屬性。(溫馨提示:可以點擊下例視窗左上方的「HTML」與「CSS」按鈕來查看語法)

See the Pen Float-example-4 by Tedutw (@Tedutw) on CodePen.

前端工程師想要做出兩欄或多欄的網頁,則可以善用 float 屬性搭配寬度需要進行初步的排版。

以下範例為兩欄的排版示例。兩個欄位視為兩個區塊, float 屬性都設定為「left」,左欄寬度為 20%;右欄為 80%:

See the Pen Float-example-5 by Tedutw (@Tedutw) on CodePen.

網路上有人說:前端工程師的網頁 layout 基石除了本章介紹的浮動(float) 屬性之外,還有下一張會介紹的清除浮動(clear)。想當前端工程師的各位同學們請先把本章再複習一次,並親自使用 codepen 自己練習一次程式,才會達到最佳的學習效果!

 

 

更多關於前端工程師的文章請點閱下方連結!!

 

 

 

其他閱讀

從哆啦A夢到 iPhone…為何 UI 設計用「圓角」就是比較討喜?

APCS 程式檢定,該從 CJava 還是 Python 下手?

【前端工程師CSS教學】float浮動屬性

AI人工智慧救地球!GoogleAI 保護環境還比人類快 3000

所有APCS認證要知道的事都在這!!()

前端工程師起步的t初學小課(22):數學物件

如何分辨全端,後端和前端工程師?還不知道的可是不行的喔~

前端工程師CSS小課:定位元素

前端工程師CSS小課:定位元素
前端工程師CSS小課:定位元素

正在學習前端工程師課程的同學過來~CSS系列課程登場嘍!!今天要介紹的是定位元素~

為了要設計出更複雜的網頁前端版面,前端工程師都必須知道 CSS 的所有「position 屬性」。如下所示,它有一大堆屬性值,這些屬性值不好理解且也不好記憶,但稍一設定不好,就會讓許多 CSS 區塊若入走鐘、重疊等窘境。這些屬性一個個介紹如下,也建議各位想當前端工程師的學員們把這頁加入網頁書籤中,以便日後方便查詢。

See the Pen CSS:Position 範例 by Tedutw (@Tedutw) on CodePen.

CSS:Positioning Elements 定位元素

CSS 定位屬性(positioning properties)是用來定位元素使用。它可將一個元素置於另一個元素之後,還可以指定當某個元素的內容太大時該如何做。

所有的元素都可用 top(上)、bottom(下)、left(左) 與 right(右) 屬性來定位。但若沒事先將「定位屬性」設置好的話,以上四種屬性(top、bottom、left 與 right)皆不起作用。它們亦會依照定位方法的不同,而以不同的方式呈現。

靜態定位(position: fixed)

「靜態定位(position: fixed)」是所有 HTML 元素的預設值。當元素為「靜態定位(position: fixed)」時,會遵循「Normal flow (指從左到右、上到下的常態佈局)」來排列。

靜態定位的元素不受 top、bottom、left 與 right 屬性的影響。如下例,儘管我們 CSS 設定為「top: 30px;right: 5px;」(上方距離30px、右側距離50px),被靜態定位的 HTML 元素,排版仍不受這些 CSS 影響。

See the Pen position_static by Tedutw (@Tedutw) on CodePen.

固定定位(position:fixed)

固定定位(position: fixed)的元素會相對於瀏覽器視窗來定位,這意味著即便頁面捲動,它還是會固定在相同的位置。

不同於靜態定位,固定定位(position: fixed)的元素可由 top、bottom、left 與 right 屬性的來指定位置。我們將上一段「靜態定位(position: fixed)」的範例,其中的 CSS 「position:static」改為「position:fixed」,則排版受到「top: 30px;right: 5px;」(上方距離30px、右側距離50px)的屬性影響,如下所示:

See the Pen position_fixed by Tedutw (@Tedutw) on CodePen.

固定定位(position: fixed)的元素會從「Normal flow (從左到右、上到下的排列)」的常態佈局中移除。所以其他未設定為「固定定位(position: fixed)」的元素,仍然依照「左到右、上到下」的排列,彷彿其中不存在固定定位的元素般。而 固定定位的元素可與其他的元素重疊。

相對定位(position:relative)

所謂的「相對」,是以原本正常的位置為中心點,依照元素偏移原本位置多少而定數值。相對定位(position:relative)的元素可以結合 top、bottom、left、right 等屬性,使其元素「相對地」偏移原本該出現的位置。

如以下的例子,我們在原本的位置安插粉紅色背景的文字(文字為「相對定位」)區塊,並且設定該區塊相對於原本該出現的區塊「上方留空間 5px(top: 5px;)、 左方留空間 5px(left: 5px;)」。

See the Pen position_relative by Tedutw (@Tedutw) on CodePen.

相對位置的元素內容可移動到指定位置、也可以與其他的元素重疊。但是該元素原本該出現的正常位置,會被保留而不會消失。

相對值不能用於 table cells、columns、column groups、rows、row groups 或是 captions。

絕對定位(position:absolute)

不得不說,絕對定位(position:absolute)是網頁前端比較弔詭的定位屬性。absolute 與 relative 的行為很像,不一樣的地方在於 absolute 元素的定位是相對於父層元素的位置、relative 元素則是相對於他本該出現的位置。

當元素的 position 設定為 absolute 後,它就會看它父層的元素是否有被設定為 relative、absolute 或是 fixed,若有,則以父元素為定位的基準點;若無,則以該網頁頁面(“body”)的左上角為定位點置,看起來就是這張網頁的絕對位置一樣。

以下範例為兩個絕對定位(position:absolute)元素的範例,右上方的元素的父元素 position 沒有設定,因此被默認為「static」——也就是不屬於 relative、absolute、fixed 或是 inherit 的任一個,因此該元素會以整個網頁區域為定位點,從最上方往下移動 30 px、從最右方往左移動 30 px;而另一個元素的父元素 position 是 relative,因此會以父元素為定位點,從最上方往下移動 30 px、從最右方往左移動 30 px。

See the Pen position: absolute by Tedutw (@Tedutw) on CodePen.

同學們可以點擊以上範例中左上角的「HTML」與「CSS」按鈕來練習 coding。

所有的 CSS 版面配置:Positioning Elements 定位元素介紹到此結束。光看以上的解釋,會容易搞混。此時,不妨回到此章節的最前面的範例,點擊範例框左上角的「HTML 」與「CSS」按鈕來研究原始碼,並且親自練習一次這些 CSS 碼,試試各種不同的 position 屬性所呈現的效果。未來想要成為前端工程師的話,就請多練習幾遍。本系列「前端工程師課程」下一章即將介紹網頁 layout 基石之一——浮動(float)屬性

 

更多關於前端工程師的文章請點閱下方連結!!

 

 

 

其他閱讀

從哆啦A夢到 iPhone…為何 UI 設計用「圓角」就是比較討喜?

APCS 程式檢定,該從 CJava 還是 Python 下手?

【前端工程師CSS教學】float浮動屬性

AI人工智慧救地球!GoogleAI 保護環境還比人類快 3000

所有APCS認證要知道的事都在這!!()

前端工程師起步的t初學小課(22):數學物件

如何分辨全端,後端和前端工程師?還不知道的可是不行的喔~

超夯網頁前端小教室:display與visible

超夯網頁前端小教室:display與visible
超夯網頁前端小教室:display與visible

想學習網頁前端的你絕對不能不知CSS!今天要來跟大家就紹的就是display 屬性與visibility屬性!

本篇介紹網頁前端排版的兩個CSS屬性:display 屬性與 visibility 屬性。

CSS:display 屬性

display:block

對於 CSS 語法來說,網頁前端的每個元素都是一個矩形盒(rectangular box)模型。使用「display」屬性可以決定「盒(box)」的呈現方式。

又「區塊元素(block element)」則會佔用可用寬度的最大值,前後有換行符

以下範例分別顯示了是否有將<span>元素顯示為區塊元素(block element)的結果。在下方的顯示視窗中,按「CSS」可以觀看 CSS 的語法如何設定。

See the Pen display: block by Tedutw (@Tedutw) on CodePen.

上述範例的網頁前端 CSS 語法設定如下:

span.block{
  display:block;
}

display:inline

inline 元素只佔用可用寬度的最大值,並不強制換行。

將上一段範例的<span>元素,CSS 換成「display: inline」的結果如下。跟上一個範例一樣,在下方的顯示視窗中,按「CSS」可以觀看 CSS 的語法如何設定。

See the Pen display: block by Tedutw (@Tedutw) on CodePen.

上述範例的 CSS 語法設定如下:

span{
  display:inline;
}

display:none

「display:none」用來將元素隱藏使用,元素隱藏後就不佔用任何空間,在網頁前端頁面顯示時不會展現出來,就好像該元素不存在一樣。

以下範例中,我們將第 2、4 段設為「display:none」,其他設為「display:block」。

See the Pen display: none by Tedutw (@Tedutw) on CodePen.

上述介紹的「block」、「inline」、「none」都是最常用的 display 參數。display 還有很多其他次常用的參數值,如 list-item、table、table-cell、table-column、grid 等,會在往後的章節中一一介紹

visibility 屬性

visibility 屬性用於指定元素是可見的還是隱藏的。最常見的值是 visible 和 hidden

當我們想要隱藏園素食,有兩個方法:一是上一段介紹的,將「display」屬性設為「 none」參數;二是將「visibility」屬性設置為「hidden」來隱藏元素。

注意:以上兩個方法雖然都能將元素隱藏,但都呈現出不同的結果:

被「display:none」隱藏後的元素,就不會佔用任何的空間,就好像它從來都不存在一樣;而被「visibility:hidden」隱藏後的元素,雖然在網頁前端不會顯示,但仍佔用了對應的空間(就是被隱藏的元素有多大,網頁上空出來的空間就有多大),所以仍會影響排版。範例如下:

我們準備要將以下的例子,第一個<p>元素設為「visibility:hidden」、第二個<p>元素設為「display: none」。

See the Pen visible:hidden-before by Tedutw (@Tedutw) on CodePen.

將以上的第一個<p>元素設為「visibility:hidden」、第二個<p>元素設為「display: none」的結果如下:

See the Pen visible:hidden-after by Tedutw (@Tedutw) on CodePen.

由以上例子我們可知,同樣都是將元素隱藏,第一個<p>元素雖然被「visibility:hidden」隱藏了,但是仍遺留下空間;第二個被「display: none」隱藏的<p>元素則是完完整整的「被消失」,連原本的位置都不見了。

下一張我們將介紹網頁前端排版的另一個 CSS 屬性:Positioning Elements。

 

更多網頁前端相關文章請到本部落格首頁搜尋~

 

 

 

其他閱讀

Python寫出唐鳳「番茄鐘工作法」程式,讓AI幫你集中注意力!

AI機器狗Aibo成最新愛寵 真狗會被取代嗎?

今年10月即將入手的新身分證,它的UI設計有啥亮點?

你是我的眼!Google AI 眼鏡助視障朋友「看見」世界

給零基礎網站前端學員的入門簡介!!

前端工程師一定要懂的JavaScript變數命名規範~

UI學員看過來!即將登場的新式身分證有甚麼特別的呢!()

前端工程師必讀之新手上路(22):數學物件

前端工程師必讀之新手上路(22):數學物件
前端工程師必讀之新手上路(22):數學物件

想當前端工程師的你,時下最熱門的程式語言之一JavaScript開始學了嗎?先來看看我們為你準備的文章吧!!(22)

Math物件的屬性

Math 是 JavaScript 的原生物件,可進行多種數學運算。該物件不是用函式建構式來生成,所有的屬性和方法都必須在 Math 物件上呼叫。

Math 物件包含多種屬性,列舉如下表:

 

    1. 屬性
    2. 描述
    1. 歐拉常數,是自然對數函數的底數,約為 2.718。
    1. LN2
    2. 2 的自然對數
    1. LN10
    2. 10 的自然對數
    1. LOG2E
    2. 以 2 為底的歐拉常數(E),其值約為 1.442。
    1. LOG10E
    2. 以 10 為底的歐拉常數(E),其值約為 0.434。
    1. PI
    2. 圓周率,其值約為 3.14159
    1. SQRT2
    2. 2 的平方根,其值約為 2.414
    1. SQRT1_2
    2. 1/2 的平方根,其值約為 0.707

 

以上 Math 物件的屬性,範例如下:

See the Pen The Math object by Tedutw (@Tedutw) on CodePen.

Math物件的方法

Math 物件除了有許多屬性外,也有許多方法,列表如下:

 

    1. 方法
    2. 描述
    1. abs(x)
    2. 不用懷疑,就是回傳x的絕對值
    1. acos(x)
    2. 回傳x的反餘弦(三角函數,數學符號是arccos)
    1. asin(x)
    2. 回傳x的反正弦(反三角函數,數學符號是arcsin)
    1. atan(x)
    2. 回傳x的反正切(反三角函數,數學符號是arctan)
    1. ceil(x)
    2. 回傳離x最近的整數:若x為浮點數則向上取整數;x為整數擇取x本身
    1. cos(x)
    2. 回傳x的餘弦(三角函數,數學符號是cos)
    1. exp(x)
    2. 回傳值為以x指數的E
    1. floor(x)
    2. 回傳離x最近的整數:若x為浮點數則向下取整數;x為整數擇取x本身
    1. log(x)
    2. 回傳x的自然對數
    1. max(x,y,z…,n)
    2. 回傳最大值
    1. min(x,y,z…,n)
    2. 回傳最小值
    1. pow(x,y)
    2. 回傳值為x的y次方
    1. random()
    2. 隨機回傳0與1之間的任一數
    1. sin(x)
    2. 回傳x的正弦(三角函數,數學符號是sin)
    1. sqrt(x)
    2. 回傳值為x的平方根
    1. tan(x)
    2. 回傳x的正切(三角函數,數學符號是tan)

 

以上 Math 物件的方法,範例如下(不包含三角函數):

See the Pen The Math object-method by Tedutw (@Tedutw) on CodePen.

綜合練習

讓我們來撰寫一個 JavaScript 程式:省先彈出一個視窗,要求使用者輸入數字。使用者輸入數字後,即會出現警示視窗,顯示該數字的平方根。

var x = prompt("請輸入一個數字","");
var answer = Math.sqrt(x);
alert(x+" 的平方根是 "+ answer);

執行結果如下:

此時前端工程師輸入「64」,則會有以下結果:

JavaScript 的數學物件就介紹到此。若能善用數學物件,則可減省時間。不必自己寫函數。下一章我們將介紹另一個 JavaScript 的原生物件——日期物件。

 

更多關於前端工程師HTML的文章請到本部落格首頁搜尋喔!!

 

 

 

其他閱讀

達內教育評價:別再抱怨不景氣了!高中生靠SEM接案創業每月額外收入7

Python寫出唐鳳「番茄鐘工作法」程式,讓AI幫你集中注意力!

痛失英才!台灣人工智慧學校執行長陳昇瑋辭世

人生是自己的, 達內教育評價要靠自己來體驗!

Javascript新手上路(十九):Method

前端工程師一定要懂的JavaScript變數命名規範~

想學習網站前端的零基礎學員不可不知的新手常識!!

 

 

 

 

一次讓你弄清楚全端,後端,前端工程師差在哪裡!!

一次讓你弄清楚全端,後端,前端工程師差在哪裡!!
一次讓你弄清楚全端,後端,前端工程師差在哪裡!!

今天要來幫大家一解前端工程師與後端工程師的差異~連全端工程師也一併送喔!!還不知道的同學請享用~

一、前端方向

網站的“前端”是與用戶直接交互的部分,包括你在瀏覽網頁時接觸的所有視覺內容–從字體到顏色,以及下拉菜單和側邊欄。這些視覺內容,都是由瀏覽器解析、處理、渲染相關 HTML、CSS、Javascript 文件後呈現而來。

技能與工具

前端開發,就是要創造上面提到的網站面向用戶的部分背後的代碼,並通過建立框架,構建沉浸性的用戶體驗。為了實現這個目標,開發需要熟練運用下列語言、框架、工具庫:

三大語言:HTML,CSS,和 JavaScript

此外,掌握 jQuery 和 LESS 等工具庫也很重要,它們能幫助工程師以更高效的方式編碼;

很多前端開發崗也要求 Ajax 方法的使用經驗,它可以幫助你使用 Javascript 在後台從服務器拉取數據,協助實現頁面的動態加載。

打個比方,前端工程師的工作專注於“房屋”裝修,而蓋房子的工作由後端工程師負責。

通過一些專門的工具,前端工程師與設計師/用戶體驗分析師密切合作,幫助構建原型或是線框圖,參與產品開發到發布的全過程。

一些前端工程師甚至能準確定位影響用戶體驗的特定問題,並給出建議或是代碼解決方案,對產品設計帶來積極影響。

在專業能力外,與其它團隊協作,以理解特定目標、需求、機遇,以及高效的執行力也非常重要。

這聽起來工作內容很多,但也回報豐厚。 “我是一名技術人員,也是一名設計者,在數字平台上使用標記語言和代碼修改視覺元素並與之互動是很自然而有趣的體驗,”有八年前端開發經驗的Mikey Ilagan 說“這讓我能夠直接影響到用戶體驗,操縱應用和網站裡用戶所見並直接與之交互的元素,這非常棒!”

總之,前端工程師要為後端工程師搭建的“房屋”進行內部設計和裝修工作。裝潢風格由房屋所有者指定。 Apptix 的產品市場負責人 Greg Matranga 表示:“前端工程師有時更容易為他們的工作感到振奮,因為他們有更廣闊的空間發揮自己的創造力。”

二、後端方向

是什麼給網站前端提供支持?數據存放在哪裡?這就涉及後端內容了。網站後端包括服務器、應用還有數據庫。後端工程師構建並維護這些組件,為網站提供多方面支持。

技能與工具

為了讓服務器、應用、數據庫能夠彼此交互,後端工程師需要具有如下技能:

用於應用構建的服務器端語言:PHP, Ruby, Python, Java, .Net 等;

數據相關工具:MySQL, Oracle, SQL Server 等;

PHP框架:Zend, Symfony, CakePHP等;

版本控制工具:SVN, CVS , Git 等;

還要熟練使用 Linux 作為開發和部署環境。

後端工程師使用這些工具編寫乾淨、可移植、具有良好文檔支持的代碼來創建或更新 網站 應用。但在寫代碼之前,他們需要與客戶溝通,了解其實際需求並轉化為技術目標,制定最有效且精簡的方案來進行實現。

“我熱愛後端開發因為我喜歡操縱數據”,資深後端工程師就職於 Wildbit 的 JP Toto 說。 “現在共有和私有 API 已變成移動設備、網站以及其它互聯繫統交換數據的必備通道。創建對大家有用的 API 是我工作裡非常鼓舞人心的部分”。

三、全端

有時前後端之間並沒有明確的界限,“前端工程師通常需要額外學習後端技巧,反之亦然,尤其在特定市場條件下”,Matranga 說:“工程師需要跨領域知識,有時甚至需要成為全才。”

全端工程師,最初是6年多以前由 Facebook 帶動的概念。全端的核心,是指這批工程師能夠承擔包括前端、後端在內的所有功能開發任務,他們擁有一個技能全家桶。

“能夠同時承擔服務器端和客戶端工作會為你帶來更多機會,” Grovo 的全端工程師Federico Ulfo 說“當然這也就意味著更多的挑戰。以廚藝作類比,掌握烹飪和烘焙都需要時間與經驗積累,同時掌握兩者要花費更多精力。照著菜譜做誰都可以,我此處所說的是做出真正美味東西的能力。”

技能與工具

全端工程師也通常在服務器端進行編程工作,但他們熟練前端語言,能夠操縱網站面向用戶的部分。基本上可以形容他們是百事通。

具體工具依項目和客戶需求而定,全端工程師需要對網站 架構的每一個層次都有足夠的了解:搭建和配置Linux 服務器,編寫服務器端API,利用客戶端Javascript 代碼驅動應用,將設計層面的東西轉化到實際的CSS 代碼。

掌握並使用大量工具的同時,全端工程師需要敏捷地分配服務器端和客戶端任務,提供解決方案並對比不同方案的優劣。

想知道更多關於前端工程師的相關知識嗎?快到本部落格首頁搜尋吧!!

其他閱讀

JavaScript入門教學#21|陣列的方法與屬性

JavaScript入門教學#22|數學物件

今年10月即將入手的新身分證,它的UI設計有啥亮點?

差點被拋棄的冠軍程式語言-Java入門教學(一)Java 身世之謎/寫出第一個Java程式

Javascript新手上路(十九):Method

前端工程師一定要懂的JavaScript變數命名規範~

想學習網站前端的零基礎學員不可不知的新手常識!!

給零基礎網站前端學員的入門簡介!!

給零基礎網站前端學員的入門簡介!!
給零基礎網站前端學員的入門簡介!!

對網站前端有興趣嗎?想踏入這行卻還不清楚網站前端是在做甚麼嗎?那你看這篇就對了!!

很多想要轉行的朋友紛紛把目光投降了網站前端技術。 網站前端作為一個薪資前景好的熱門行業,吸引了很多人的加入。但是對於剛剛準備轉行的朋友來說並不知道網路前端是什麼?零基礎怎麼學習Web?下面就來和小編一起看一看文章內容吧~

 

零基礎怎麼學習Web?

 

一、網路前端是什麼呢?

 

當你在網絡、APP上瀏覽網頁時看到的所有漂亮的頁面都是由網路前端實現的,在我們看來簡單,但是一個小小的按鈕,一個小小的符號都是網路前端工作者仔細斟酌過的。

 

網路前端工作相對於其他軟件開發工作是比較容易入門的,但是深入學習會比較困難,它需要從業人員掌握一定的設計、代碼、交互技能,有的公司還會要求有一點SEO技能。達妹帶你看看零基礎怎樣入門?

 

二、零基礎怎麼學習Web?

 

網路前端培訓零基礎入門有兩種方式:

 

· 第一,通過自己自學進入該行業

 

· 第二,通過參加Web培訓機構入門

 

通過自身學習入門你需要通過的是最開始學習時多看看視頻,有一定了解後針對自身情況挑選合適的書籍,進行知識性的查漏補缺。當然這學習的過程很重要,需要將自己學習的知識串成知識點時常溫習。平時多練習代碼,堅持一段時間之後一定能有所成就。最好可以挑選合適的教育機構,這樣可以減少你學習的時間,有針對性的學習。

 

三、網路前端技術的三個階段

 

分別是前端美工、前端開發和前端架構。

 

前端美工主要負責最基本的一些平面設計,視覺互動設計,不需要參加太多代碼問題,中級網路前端會寫js,應用js,用戶交互等,前端架構是開發、優化框架和服務器,用戶體驗等涉汲就比較廣。三者薪資根據等級不同也逐漸升高。

 

四、網路前端開發包括三個要素

 

HTML5、CSS和JS,是網路前端開發包括的三要素,當然服務器端語言以及基本的PS、視覺設計也是需要了解的。 網路前端既需要與上游的視覺互動設計師、視覺設計師和產品經理溝通,又要與下游的服務器端工程師溝通,需要掌握的技能比較多。所以對於有些知識只需要入門不需要精通,有些知識卻需要融會貫通,這對網路前端開發的學習比較重要。

 

五、HTML5和網路前端的區別

 

HTML5是現在網路前端開發一項重要的內容,由於技術的不斷發展,市場需求的不斷變化,加之新媒體時代的衝擊,例如微信的小程式,這都決定了HTML5的重要性,未來HTML5工程師的需求一定會大大增加,由於這是新鮮產物,市場的需求一定是向偏年輕化需求發展,因為他們的接受能力和學習能力高於中年人,所以現在進入HTML5的學習和網路前端的學習時機很好。

更多程式語言或網路前端相關文章請點下方連結或至本部落格首頁搜尋!!

其他閱讀

JavaScript入門教學#22|數學物件

你是我的眼!Google AI 眼鏡助視障朋友「看見」世界

JavaScript入門教學#21|陣列的方法與屬性

今年10月即將入手的新身分證,它的UI設計有啥亮點?

Python學員找工作免擔心!!就業種類選擇看這篇!!

原來用Python輔助Excel的好處這麼多?!

純國產技術木蘭被懷疑抄襲Python?!到底誰是正宗?

 

前端工程師和後端工程師到底都在做些什麼?

前端工程師和後端工程師到底都在做些什麼?
前端工程師和後端工程師到底都在做些什麼?

你夠了解前端工程師的工作內容嗎?你知道前端與後端工程師都在做些什麼嗎?

業界對於網站開發工程師的需求,一直沒有停止過,也吸引很多非本科系出身的同學想轉職到網站開發工程師。但是常常聽到網站開發工程師還有分成「前端工程師」、「後端工程師」,還有綜合上述的「全站(full-stack)工程師」。這三種職位到底差在哪?該選哪種學習比較好上手?因此本篇文章幫助你先了解網站開發的分工定義、技能需求,才能幫助你找到適合自己的目標、更有效率學習,更快達成轉職網站開發工程師的願望。

前端工程師

網站的「前端」是與用戶直接交互的部分,包括你在瀏覽網頁時接觸的所有視覺內容–從字體到顏色,以及下拉菜單和側邊欄。這些視覺內容,都是由瀏覽器解析、處理、渲染相關HTML、CSS、Javascript 文件後呈現而來。

技能與工具

前端開發,就是要創造上面提到的網站面向用戶的部分背後的代碼,並通過建立框架,構建沉浸性的用戶體驗。為了實現這個目標,開發需要熟練運用下列語言、框架、工具庫——三大語言:HTML,CSS,和Javascript

此外,掌握jQuery 和LESS 等工具庫也很重要,它們能幫助開發者以更高效的方式編碼;很多前端開發崗也要求Ajax 方法的使用經驗,它可以幫助你使用Javascript 在後台從服務器拉取數據,協助實現頁面的動態加載。

打個比方,前端工程師的工作專注於「房屋」裝修,而蓋房子的工作由後端開發者負責。通過一些專門的工具,前端開發者與設計師/用戶體驗分析師密切合作,幫助構建原型或是線框圖,參與產品開發到發布的全過程。

一些前端工程師甚至能準確定位影響用戶體驗的特定問題,並給出建議或是代碼解決方案,對產品設計帶來積極影響。在專業能力外,與其它團隊協作,以理解特定目標、需求、機遇,以及高效的執行力也非常重要。

這聽起來工作內容很多,但也回報豐厚。「我是一名技術人員,也是一名設計者,在數字平台上使用標記語言和代碼修改視覺元素並與之互動是很自然而有趣的體驗,」有八年前端開發經驗的Mikey Ilagan 說「這讓我能夠直接影響到用戶體驗,操縱應用和網站裡用戶所見並直接與之交互的元素,這非常棒!」

總之,前端開發者要為後端開發者搭建的「房屋」進行內部設計和裝修工作。裝潢風格由房屋所有者指定。Apptix 的產品市場負責人Greg Matranga 表示:「前端開發者有時更容易為他們的工作感到振奮,因為他們有更廣闊的空間發揮自己的創造力。」

後端工程師

是什麼給網站前端提供支持?數據存放在哪裡?這就涉及後端內容了。網站後端包括服務器、應用還有數據庫。後端開發者構建並維護這些組件,為網站提供多方面支持。

由上圖可以看出,UDN 的讀者來源,大部分來自 Search (搜尋引擎)輸入特定關鍵字後,進到 UDN 的網頁;而東森新聞雲的讀者最多都是從 Facebook 等 Social 社群網站的連結進來。

技能與工具

為了讓服務器、應用、數據庫能夠彼此交互,後端工程師需要具有如下技能:

用於應用構建的服務器端語言:PHP, Ruby, Python, Java, .Net 等;
數據相關工具:My SQL , Oracle, SQL Server等;
PHP框架:Zend, Symfony, CakePHP等;
版本控制工具:SVN, CVS , Git 等;
還要熟練使用Linux 作為開發和部署環境。

後端開發者使用這些工具編寫乾淨、可移植、具有良好文檔支持的代碼來創建或更新 Web 應用。但在寫代碼之前,他們需要與客戶溝通,了解其實際需求並轉化為技術目標,制定最有效且精簡的方案來進行實現。

「我熱愛後端開發因為我喜歡操縱數據」,資深後端開發者就職於 Wildbit 的 JP Toto 說。「現在共有和私有 API 已變成移動設備、網站以及其它互聯繫統交換數據的必備通道。創建對大家有用的API 是我工作裡非常鼓舞人心的部分」。

全端工程師

全端工程師,最初是 6 年多以前由 Facebook 帶動的概念。全棧的核心,是指這批開發者能夠承擔包括前端、後端在內的所有功能開發任務,他們擁有一個技能全家桶。

「能夠同時承擔服務器端和客戶端工作會為你帶來更多機會,」 Grovo 的全端工程師 Federico Ulfo 說「當然這也就意味著更多的挑戰。以廚藝作類比,掌握烹飪和烘焙都需要時間與經驗積累,同時掌握兩者要花費更多精力。照著菜譜做誰都可以,我此處所說的是做出真正美味東西的能力。」

技能與工具

全端工程師也通常在服務器端進行編程工作,但他們熟練前端語言,能夠操縱網站面向用戶的部分。基本上可以形容他們是百事通。

全端工程師需要對 Web 架構的每一個層次都有足夠的了解:搭建和配置Linux 服務器,編寫服務器端API,利用客戶端Javascript 代碼驅動應用,將設計層面的東西轉化到實際的CSS 代碼。掌握並使用大量工具的同時,全端工程師需要敏捷地分配服務器端和客戶端任務,提供解決方案並對比不同方案的優劣。

 

想閱讀更多關於前端工程師的文章可以去本部落格首頁搜尋喔~

 

 

 

其他閱讀

前端工程師除了RWD外, 還可依需求選擇其他方式來做SEO!!

前端工程師不知道怎麼選擇RWD和AWD? 這邊直接分析給你!!

網頁設計師學好這個就能與前端工程師合作無間!!

暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~

重新學習UI UX Python課程 打好基礎輕鬆領高薪

有一個傳說 來上Java課程還能任高薪職缺 媒合率竟高達百分之90

人工智慧讓你看清肥胖的原因 讓Python課程教你如何做到

前端工程師與全站工程師哪裡不一樣?

前端工程師與全站工程師哪裡不一樣?
前端工程師與全站工程師哪裡不一樣?

你或許對前端工程師這個名詞很熟悉~但你知道他與全站工程師的工作哪裡不一樣嗎?

業界對於網站開發工程師的需求,一直沒有停止過,也吸引很多非本科系出身的同學想轉職到網站開發工程師。但是常常聽到網站開發工程師還有分成「前端工程師」、「後端工程師」,還有綜合上述的「全站(full-stack)工程師」。這三種職位到底差在哪?該選哪種學習比較好上手?因此本篇文章幫助你先了解網站開發的分工定義、技能需求,才能幫助你找到適合自己的目標、更有效率學習,更快達成轉職網站開發工程師的願望。

前端工程師

網站的「前端」是與用戶直接交互的部分,包括你在瀏覽網頁時接觸的所有視覺內容–從字體到顏色,以及下拉菜單和側邊欄。這些視覺內容,都是由瀏覽器解析、處理、渲染相關HTML、CSS、Javascript 文件後呈現而來。

技能與工具

前端開發,就是要創造上面提到的網站面向用戶的部分背後的代碼,並通過建立框架,構建沉浸性的用戶體驗。為了實現這個目標,開發需要熟練運用下列語言、框架、工具庫——三大語言:HTML,CSS,和Javascript

此外,掌握jQuery 和LESS 等工具庫也很重要,它們能幫助開發者以更高效的方式編碼;很多前端開發崗也要求Ajax 方法的使用經驗,它可以幫助你使用Javascript 在後台從服務器拉取數據,協助實現頁面的動態加載。

打個比方,前端工程師的工作專注於「房屋」裝修,而蓋房子的工作由後端開發者負責。通過一些專門的工具,前端開發者與設計師/用戶體驗分析師密切合作,幫助構建原型或是線框圖,參與產品開發到發布的全過程。

一些前端工程師甚至能準確定位影響用戶體驗的特定問題,並給出建議或是代碼解決方案,對產品設計帶來積極影響。在專業能力外,與其它團隊協作,以理解特定目標、需求、機遇,以及高效的執行力也非常重要。

這聽起來工作內容很多,但也回報豐厚。「我是一名技術人員,也是一名設計者,在數字平台上使用標記語言和代碼修改視覺元素並與之互動是很自然而有趣的體驗,」有八年前端開發經驗的Mikey Ilagan 說「這讓我能夠直接影響到用戶體驗,操縱應用和網站裡用戶所見並直接與之交互的元素,這非常棒!」

總之,前端開發者要為後端開發者搭建的「房屋」進行內部設計和裝修工作。裝潢風格由房屋所有者指定。Apptix 的產品市場負責人Greg Matranga 表示:「前端開發者有時更容易為他們的工作感到振奮,因為他們有更廣闊的空間發揮自己的創造力。」

後端工程師

是什麼給網站前端提供支持?數據存放在哪裡?這就涉及後端內容了。網站後端包括服務器、應用還有數據庫。後端開發者構建並維護這些組件,為網站提供多方面支持。

由上圖可以看出,UDN 的讀者來源,大部分來自 Search (搜尋引擎)輸入特定關鍵字後,進到 UDN 的網頁;而東森新聞雲的讀者最多都是從 Facebook 等 Social 社群網站的連結進來。

技能與工具

為了讓服務器、應用、數據庫能夠彼此交互,後端工程師需要具有如下技能:

用於應用構建的服務器端語言:PHP, Ruby, Python, Java, .Net 等;
數據相關工具:My SQL , Oracle, SQL Server等;
PHP框架:Zend, Symfony, CakePHP等;
版本控制工具:SVN, CVS , Git 等;
還要熟練使用Linux 作為開發和部署環境。

後端開發者使用這些工具編寫乾淨、可移植、具有良好文檔支持的代碼來創建或更新 Web 應用。但在寫代碼之前,他們需要與客戶溝通,了解其實際需求並轉化為技術目標,制定最有效且精簡的方案來進行實現。

「我熱愛後端開發因為我喜歡操縱數據」,資深後端開發者就職於 Wildbit 的 JP Toto 說。「現在共有和私有 API 已變成移動設備、網站以及其它互聯繫統交換數據的必備通道。創建對大家有用的API 是我工作裡非常鼓舞人心的部分」。

全端工程師

全端工程師,最初是 6 年多以前由 Facebook 帶動的概念。全棧的核心,是指這批開發者能夠承擔包括前端、後端在內的所有功能開發任務,他們擁有一個技能全家桶。

「能夠同時承擔服務器端和客戶端工作會為你帶來更多機會,」 Grovo 的全端工程師 Federico Ulfo 說「當然這也就意味著更多的挑戰。以廚藝作類比,掌握烹飪和烘焙都需要時間與經驗積累,同時掌握兩者要花費更多精力。照著菜譜做誰都可以,我此處所說的是做出真正美味東西的能力。」

技能與工具

全端工程師也通常在服務器端進行編程工作,但他們熟練前端語言,能夠操縱網站面向用戶的部分。基本上可以形容他們是百事通。

全端工程師需要對 Web 架構的每一個層次都有足夠的了解:搭建和配置Linux 服務器,編寫服務器端API,利用客戶端Javascript 代碼驅動應用,將設計層面的東西轉化到實際的CSS 代碼。掌握並使用大量工具的同時,全端工程師需要敏捷地分配服務器端和客戶端任務,提供解決方案並對比不同方案的優劣。

 

想閱讀更多關於前端工程師的文章可以去本部落格首頁搜尋喔~

 

 

 

其他閱讀

前端工程師除了RWD外, 還可依需求選擇其他方式來做SEO!!

前端工程師不知道怎麼選擇RWD和AWD? 這邊直接分析給你!!

網頁設計師學好這個就能與前端工程師合作無間!!

暑假快到了!與其讓兒子盲目拚學測,我寧可讓他先選擇人生方向~

重新學習UI UX Python課程 打好基礎輕鬆領高薪

有一個傳說 來上Java課程還能任高薪職缺 媒合率竟高達百分之90

人工智慧讓你看清肥胖的原因 讓Python課程教你如何做到

有了它前端工程師不再超時工作Emmet:元素與流水編號

有了它前端工程師不再超時工作Emmet:元素與流水編號
有了它前端工程師不再超時工作Emmet:元素與流水編號

前端工程師準時下班輕鬆工作不再是夢想~只要學會了它!!(元素與流水編號)

複製元素

前端工程師要產生 ol 或是 ul 清單標籤時,都會包含一拖拉庫的 li 元素。如果要一個一個手動輸入的話,就算是使用 Emmet 的「+」快捷輸入法,還是會花去不少時間。幸好 Emmet 有複製的快捷輸入法:「*」。用法是:若想要一次產生 5 個相同的元素的話,就在原宿後方輸入「*5」。由此類推,產生 7 個就是「*7」。假使我們今天要建立一個 ul 清單標籤,包含 5 個 li 元素,語法就可以這樣寫「ul>li*5」之後再按 ctrl+E 即可。

Emmet快捷複製法
再假設我們要在一個 .news 中放置 5 個 .block,然後每個 .block 中都有 1 個 h2 標題及 3 個 p 段落,每個 p 段落中又放置兩張圖片,則輸入「.news>(.block>h2+(p>img*2)*2)*5」

Emmet快捷複製法-2

編號

有時前端工程師在輸入 li 標籤時,會給這些 li 一個共用的 .className 以及流水編號。若搭配 Emmet 的「$」時,就可以快速的產生。例如,今天我們要輸入五個 li 標籤,標籤的 class name 分別為 list-1、list-2、list-3、list-4、list-5,則輸入「li.list-$*5」

Emmet中快速產生編號
若要在這些流水編號前面加個「零」,例如 01、001,則補上只要補上相對數量的 $ 即可。像是 01 就是 $$、001 就是 $$$。承上例,我們輸入「li.list-$$*5」以及「li.list-$$$*5」

Emmet中快速產生00編號

設定起始編號

$的用法,預設數字是從 1 開始累加。有時前端工程師會需要指定起始數字,這時則在 $ 後面多補上一個 @ 並加上指定的起始數字,承上例,我們要設定起始數字為 5 就輸入「[email protected]*5」

Emmet中設定起始編號範例
Emmet 預設的編號是由小到大,若是希望編號由大到小,那麼就是在 @ 後面補上一個 – 負號 (就算是沒要設定起始值也是要多補 @)。例如我們要輸入 5 個 li 標籤,編號由大到小,就輸入「[email protected]*5」 我們要設定起始數字為 5 ,就輸入「[email protected]*5」。

Emmet中設定反向編號
 
 
 
 
 
其他閱讀
 

有了它前端工程師不再超時工作Emmet:快速產生階層

有了它前端工程師不再超時工作Emmet:快速產生階層
有了它前端工程師不再超時工作Emmet:快速產生階層

前端工程師準時下班輕鬆工作不再是夢想~只要學會了它!!(快速產生階層)

不再爆肝工作的前端工程師都用它Emmet:快速產生階層

讓前端工程師每天輕鬆開發網頁的神器你非學不可!!學好它就護好肝!!(快速產生階層)

父子兄弟階層、群組、上一層

這一篇有簡略說到父子階層(父元素與子元素)之間的關係。想成為前端工程師的同學們未來在處理網頁時,一定會遇到父子元素、兄弟元素等。本文就簡單列出各種階層關係的 Emmet 縮寫方式:

父子元素一次輸入

前端工程師在使用 Emment 在設定子元素時非常方便,只要在父子元素間加入 > 符號即可。如下方的動態圖所示:假設我們要在 class name 名為「news_p」以及 id 名為「paragraph1」的 div 父元素中放置 子元素 p,並在 p 中在加上孫元素 ol 與 li 等動作,只要輸入「.news_p#paragraph1>p>ol>li」後按下 ctrl+E 就可一次寫完!

Emmet-父子元素一次輸入

兄弟階層一次輸入

承上面「父子元素一次輸入」的範例,若想在 p 的上方放置 h2 標題,但是 h2 標題不屬於 p 的父元素,位階是跟 p 同等的,則 h2 與 p 互為兄弟元素。

上方提到:元素間互為父子關係則用 > 隔開;若為兄弟元素,就用「+」隔開。因此此例為輸入「.news_p#paragraph1>h2+p>ol>li」

Emmet-兄弟階層一次輸入

將元素設為同一階層的群組

承上面「兄弟階層一次輸入」的範例,若前端工程師想在互為兄弟階層的 h2+p 的階層下,再多放一組一模一樣且位階相同的 h2+p 的階層的話該如何做?那就把 h2+p 視為一個群組,用 () 括號的方式包起來,把用括號起來元素視為同一階層來看即可,所以我們的語法就可以這樣寫「.news_p#paragraph1>(h2+p>ol>li)+(h2+p>ol>li)」之後再按 ctrl+E 即可。

Emmet-如何設群組

上一層

承上面「群組 Grouping」的範例,若前端工程師想在兩個互為兄弟階層的 h2+p 群組後方,新增一個 div 父元素(class name 名為「news_p」以及 id 名為「paragraph2」),就可以在元素間加入 ^ 符號即可。所以語法就可以這樣寫「.news_p#paragraph1>(h2+p>ol>li)+(h2+p>ol>li)^.news_p#paragraph2」之後再按 ctrl+E 即可。

Emmet上一層的範例

本例的 div 元素使用 ^ 符號來往上爬一個階層,如果想要爬兩層的話,就是 ^^ 符號。

想成為前端工程師,這些快速鍵要記得多練習幾次,熟練後才能在編寫HTML 時更有效率。

 

 

 

其他閱讀