編者按:@不到布?:謹以此文獻給那些被代碼折磨的設計師們,和那些與前端無法交流的設計師們。本文將從0出發,并把內容和難度限定于設計師需要并可以理解的范疇內,我并不打算寫一本前端教材(因為不夠格),所以請各位盡可能輕松閱讀。
之前一直說要開坑,但是手忙腳亂的腦內擬了一段暴長的Opening全被我扣押在腦海里了。精減下來只有一句話謹以此文獻給那些被代碼折磨的設計師們,和那些與前端無法交流的設計師們。本文將從0出發,并把內容和難度限定于設計師需要并可以理解的范疇內,我并不打算寫一本前端教材(因為不夠格),所以請各位盡可能輕松閱讀。
設計稿與代碼之間的關系
在很久很久以前,是沒有網頁設計師的存在的,當HTML橫空出世為互聯網注入最基本的生命之時,沒有人在意頁面是否好看。而隨著時間的發展,大眾審美需求的提升,網頁也需要有更多的變化而不僅僅是文字的展示,于是開始出現了網頁設計師這樣的職業,而與之相對的就是CSS的誕生。
在最早的網頁中,一切的一切都是混在一起的(就像盤古開天辟地之前的宇宙),雖說是一切,其核心只有兩個——內容與樣式。這樣的大亂燉給工程師和網頁設計師都造成了很大的困擾——如果你曾經試圖打開過某個網站的源代碼你就會知道,那里面亂成什么德行,而那個時期的源代碼是你能看到的混亂程度再乘個5位數……好吧這只是個比喻,總之因為雙方都受不了混亂的代碼,于是有人提出建議,把樣式從內容中踢出去,被踢出來的部分變成了CSS,留下的便是HTML。BTW,隨之應運而生的就是前端工程師(當然其實誕生途中還有flash啊js啊php啊各種亂七八糟的東西飛來飛去,你都不必知道)。
從這里我們大概可以知道,HTML是面對電腦、工程師這些理性邏輯頭腦的,而CSS是那些理性邏輯的家伙為設計者準備的一個“工具”,是幫助HTML面對人的工具,也是讓一堆文字變成與設計稿一樣的唯一工具。
HTML
前面說到網頁的核心是內容與樣式,HTML就是其前者——內容。脫離了內容的樣式是沒有意義的,也就是說離開HTML光談CSS是沒有意義的。HTML語言其實很好辨認,由兩個尖括號:<
和>
包起來的就被稱為標簽(tag),如果你看到某個文檔里時不時出現標簽,那這份文檔十有八九都是由HTML語言(或者它的親戚XML)寫成的。
而由一對標簽(比如<p>
和</p>
)包起來的所有文字內容,便被稱為元素(element)。元素開頭的標簽就被稱為開始標簽,而末尾的標簽則被稱為結束標簽。開始標簽和結束標簽之間可以沒有任何文字(比如<i></i>
)
- 有一種特殊的自閉合標簽,比如水平線
<hr />
或者圖片<img />
,它們的斜杠位于尖括號里面,這樣的標簽本身就是一個元素。
元素都有它的名字,名字就是開始標簽的那個尖括號后面的第一個單詞,這個名字是給電腦看的,但它很重要!因為:
- 某些元素只能位在特定的元素內。
- 某些元素只能位在特定的位置上。
同時在前端工程師中有一個很重要的課題便是語義化(Semantic HTML)。這涉及到很多問題,比如做好的網頁能不能被搜索引擎(比如百度、Google)收錄,被收錄的部分是不是我們希望他收錄的部分。不過作為設計師,語義化是寫代碼很久以后需要考慮的課題(甚至永遠不會遇到),但我仍然希望你們知道有這樣一個東西(之后我也會經常提到)。
元素之間可以嵌套,但是不能交叉閉合,比如:
后出現的標簽要先閉合成為一個元素,像下面這樣寫就絕對不行:
關于HTML,我要說的最后一個東西就是屬性(attribute)。屬性會出現在元素的開始標簽里,通過空格區分不同的屬性,而寫法是屬性名="屬性值"
。對于使用css的設計師來說,class屬性就是最重要也是最經常使用的屬性之一。
現在你可能有點暈頭轉向,但是后面我會不斷提到標簽、元素、屬性,如果不記得就回來看一下就好了。
CSS
這就是網頁的第二個核心——樣式。理論上講它可以規定網頁的一切表現,位置、顏色、大小、距離…設計稿上的所有效果都可以借助它一一呈現,但是在實際應用中配合功能和性能以及各方面的要求,導致設計師的構想并不一定能夠完整表達。
HTML代碼可以寫在很多文件中,而css代碼只能出現在兩個地方:css文件或者html文件中。而css的基本呈現形式是這樣的:
選擇器(selector)是用來告訴瀏覽器,樣式需要應用到哪個元素上,它的功能非常強大——可以直接按元素名稱選擇,也可以按元素的id屬性值選擇,還可以按元素的class屬性值來選擇,甚至可以選擇某個元素的兄弟、兒子、孫子,還能選擇元素的狀態。
在HTML及CSS中都經常提到的一個詞,class,通常也被稱作類。一個元素是可以擁有多個類的(但不能擁有多個id,整個HTML文件中的所有元素的id屬性值都應該是唯一的),類名與類名之間使用空格隔開,而類名不能使用中文。通過類選擇器選擇元素,是CSS中最常見的選擇方式。
CSS的屬性(property)和前面說過的元素的屬性(attribute)是完全不同的,有興趣的話可以讀一下這篇文章,之后我會盡量區分說明,請各位盡量避免混淆。每一條CSS屬性-值(property-value)都構成一個聲明,每一句聲明之后都需要一個半角分號;
來作為結束(就像我們寫作時所用的句號)。
至于大括號({
和}
),這是css的語法標記,就像HTML中的尖括號,時刻不要忘,否則易出錯。
HTML + CSS
HTML 與 CSS 結合在一起,設計稿就這樣從一張圖片變成了我們在瀏覽器中瀏覽的靜態網頁,當然這也就是以前可能會經常聽到的 DIV + CSS 。這樣話說起來很輕巧,但是無論是 HTML 還是 CSS 都是需要一個字一個字打出來的…而更多的問題,就在 HTML 與 CSS 的結合過程中產生了。欲知后事如何,且聽…
…慢著,我們還是先把它們結合起來,有問題下次再說…
以上是一個最基本的帶有CSS鏈接的HTML頁面的代碼:
html元素是所有網頁都必須要具備的,網頁中的一切內容必須寫在html元素內;
head元素是給瀏覽器和搜索引擎準備的,大部分并不會顯示在頁面上;
- title元素中的內容會顯示在瀏覽器標題欄的位置上;
- link元素的href屬性則指示了這個頁面所使用的css文件的;
- 還有可能會出現script元素,它將會指示這個頁面所使用的js文件;
body元素是放置網頁內容的地方(你以后所寫的99.9%的HTML代碼都會位于這個元素內)。
標簽之前的空格被稱作“縮進”,良好的縮進習慣可以幫助寫出易讀的代碼,在任何一個項目或者頁面中,都應該正確使用縮進。上面所展示的代碼就是一個基本的縮進示范,每個子元素都比其父元素縮進一個單位。
- 一般的縮進只要按下鍵盤左邊的Tab鍵就好,但是在程序員中廣泛存在一種究竟是一個Tab好還是兩個空格好的爭議(如同咸甜豆腐腦般的存在)。當然在書寫過程中,沒有人會去按兩下空格,他們通常是把Tab的輸入改為兩個空格而已(所以你只要記得,縮進一個單位按一下Tab就好)
關于書寫代碼工具,如果你實在沒得選,可以使用Dreamweaver(請使用代碼模式或者各半模式),否則當然首推Sublime Text,綠色便攜的Notepad++也是不錯的選擇。
從零開始學系列!
色彩知識大科普!再也不做“色盲”啦!
《設計師配色寶典!教你從零開始學配色(一)》幫你全面搞定摳圖的那些事兒!
《從菜鳥到高手!PHOTOSHOP摳圖全方位攻略》閱讀量過10萬的超人氣自學指南!
《超贊!設計師完全自學指南》
原文地址:hikarievo.me
作者:@不到布
【優設網 原創文章 投稿郵箱:2650232288@qq.com】
================關于優設網================
"優設網uisdc.com"是國內人氣最高的網頁設計師學習平臺,專注分享網頁設計、無線端設計以及PS教程。
【特色推薦】
設計師需要讀的100本書:史上最全的設計師圖書導航:http://hao.uisdc.com/book/。
設計微博:擁有粉絲量83萬的人氣微博@優秀網頁設計 ,歡迎關注獲取網頁設計資源、下載頂尖設計素材。
設計導航:全球頂尖設計網站推薦,設計師必備導航:http://hao.uisdc.com
———————————————————–
想在手機上、被窩里獲取設計教程、經驗分享和各種意想不到的"福利"嗎?
添加 優秀網頁設計 微信號:【youshege】優設哥的全拼
您也可以通過掃描下方二維碼快速添加:
復制本文鏈接 文章為作者獨立觀點不代表優設網立場,未經允許不得轉載。
發評論!每天贏獎品
點擊 登錄 后,在評論區留言,系統會隨機派送獎品
2012年成立至今,是國內備受歡迎的設計師平臺,提供獎品贊助 聯系我們
標志設計標準教程
已累計誕生 729 位幸運星
發表評論
↓ 下方為您推薦了一些精彩有趣的文章熱評 ↓