自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

CSS代碼整理及優(yōu)化七大原則

開(kāi)發(fā) 前端
CSS代碼優(yōu)化的目的并不僅僅是減少CSS文件的大小,它還能讓你的CSS代碼更有條理、更高效,本文向大家描述一下整理及優(yōu)化CSS代碼的7個(gè)原則。

現(xiàn)在有很多準(zhǔn)則來(lái)幫助你在完成CSS布局后進(jìn)行CSS代碼的壓縮和優(yōu)化,在優(yōu)化的同時(shí)要遵守一定的規(guī)則,這里和大家分享一下整理及優(yōu)化CSS代碼的7個(gè)原則,希望對(duì)你的學(xué)習(xí)有所幫助。

整理及優(yōu)化CSS代碼的7個(gè)原則

作為網(wǎng)頁(yè)設(shè)計(jì)師(前端工程師),你可能還記得曾經(jīng)的那個(gè)網(wǎng)頁(yè)大小建議:一個(gè)網(wǎng)頁(yè)(包括HTML、CSS、Javacript、Flash和圖片)盡量不要超過(guò)30KB的大小,隨著互聯(lián)網(wǎng)的日益龐大,網(wǎng)絡(luò)帶寬也在飛速發(fā)展,很多設(shè)計(jì)師已經(jīng)不再考慮這條30KB的理想準(zhǔn)則。隨著越來(lái)越受歡迎的CSS布局和Javascript對(duì)網(wǎng)站用戶(hù)體驗(yàn)的強(qiáng)化,使得這種現(xiàn)象越來(lái)越普遍,尤其是對(duì)于大型網(wǎng)站來(lái)說(shuō),僅僅一個(gè)CSS文件就已經(jīng)超過(guò)了30KB的上限。

但是即便如此,現(xiàn)在也有很多準(zhǔn)則來(lái)幫助你在完成CSS布局后進(jìn)行CSS代碼的壓縮和優(yōu)化。CSS代碼優(yōu)化的目的并不僅僅是減少CSS文件的大小,它還能讓你的CSS代碼更有條理、更高效。

1.使用簡(jiǎn)寫(xiě)

如果你現(xiàn)在還對(duì)簡(jiǎn)寫(xiě)一點(diǎn)都不了解,那你就又寫(xiě)落伍了,不過(guò)幸好,學(xué)起來(lái)并不是很難。使用簡(jiǎn)寫(xiě)是一種讓代碼減少的最簡(jiǎn)單方法。沒(méi)有比現(xiàn)在更適合實(shí)踐代碼簡(jiǎn)寫(xiě)的時(shí)候了,還等什么,一起來(lái)看看吧。

Margin、border、padding、background、font、list-style和outline都是可以進(jìn)行簡(jiǎn)寫(xiě)的屬性。CSS簡(jiǎn)寫(xiě)就是不再使用不同的相類(lèi)似屬性的聲明… 

  1. p{margin-top:10px;  
  2. margin-right:20px;  
  3. margin-bottom:30px;  
  4. margin-left:40px;}  
  5.  

你可以把它們簡(jiǎn)寫(xiě)成這樣: 

  1. p{margin:10px20px30px40px;}  
  2.  

瀏覽器可以通過(guò)不同數(shù)量的屬性值來(lái)解釋你定義的CSS代碼,請(qǐng)看圖解:

 

 


上面的簡(jiǎn)寫(xiě)圖解說(shuō)明的是依據(jù)不同的屬性值可以進(jìn)行不同的縮寫(xiě),這種方法同樣適用于padding和Border-width屬性。

Font的簡(jiǎn)寫(xiě)對(duì)于縮小代碼量很有幫助,而且能讓你少打很多字母;)

Font簡(jiǎn)寫(xiě)的例子。注:如果沒(méi)有定義某個(gè)屬性值的話(huà),將繼承副級(jí)元素的定義或使用默認(rèn)值。

如果你對(duì)以上簡(jiǎn)寫(xiě)方法已經(jīng)了如指掌,你還可以看看以下兩個(gè)簡(jiǎn)寫(xiě)教程(英文),也許會(huì)對(duì)你有所幫助:

1.CSSShorthandGuide(CSS簡(jiǎn)寫(xiě)指導(dǎo))

2.EfficientCSSwithshorthandproperties(高效CSS屬性的簡(jiǎn)寫(xiě))#p#

2.避免使用Hack

  Hack是一個(gè)糟糕的東西,它會(huì)為不同瀏覽器定義一樣的代碼,使得CSS繁冗?,F(xiàn)在我們知道使用條件性注釋來(lái)代替hack,他們?cè)贗E6和IE7中是被認(rèn)可的,甚至IE團(tuán)隊(duì)也推薦這樣使用。使用條件性注釋服務(wù)于符合瀏覽器特性專(zhuān)用的CSS代碼,因此,更小的、核心的CSS代碼用來(lái)服務(wù)于遵從標(biāo)準(zhǔn)的瀏覽器,只有需求條件出現(xiàn)的時(shí)候(比如IE),才會(huì)去下載額外的CSS文件!這段代碼使得IE6去下載額外的ie6.css解析它專(zhuān)用的css代碼。同樣的,如果針對(duì)IE7只用把上面的6與7替換就行了。

3.使用留白


  無(wú)論是為了自己閱讀還是二次開(kāi)發(fā),都要讓CSS保持良好的可讀性,留白就充當(dāng)了關(guān)鍵的角色。

  我們不鼓勵(lì)你為了得到一個(gè)更小的CSS文件,就去掉所有的空白格式,如tab,換行,空格等。這里推薦嵌套的代碼使用一個(gè)tab縮進(jìn),所有屬性獨(dú)立一行。

對(duì)比上圖中的兩種CSS書(shū)寫(xiě)格式,哪一種格式能讓你更加節(jié)約閱讀和修改的時(shí)間呢?留白的效果顯而易見(jiàn),它會(huì)讓你更容易管理代碼。#p#

4.移除多余的結(jié)構(gòu)(frameworks)和重設(shè)(resets)

如果你選擇使用CSSframework,包括你自己寫(xiě)的,如果你去檢查代碼一定會(huì)發(fā)現(xiàn)該framework包含的一些規(guī)則并不適用于你當(dāng)前的文件,它們是可以被刪除的。

由此可以想到的還有reset,YUIGridCSS使用的reset和EricMeyer’s重設(shè)(Reset)目前都很流行,Resets能夠移除不同瀏覽器的默認(rèn)樣式,使得頁(yè)面在各個(gè)瀏覽器之間的表現(xiàn)一致。但是它們通常包含了一個(gè)大的網(wǎng)站需要的所有屬性,一些例如屬性對(duì)于普通網(wǎng)站來(lái)說(shuō)根本不會(huì)用上,刪掉那些你用不上的。EricMeyer也會(huì)鼓勵(lì)你這樣做!

framework和reset會(huì)很好的幫助你的工作,但是如果不去掉那些你用不上的使用,反而會(huì)拖累你頁(yè)面的效率和可讀性。

5.讓CSS能保證日后的維護(hù)

   另一種優(yōu)化CSS代碼的方法是按照你的習(xí)慣將CSS生命分成清晰的結(jié)構(gòu)塊。將CSS文件的聲明用注釋分隔開(kāi)并進(jìn)行排版,可以更方便自己在很長(zhǎng)時(shí)間以后重新審理這個(gè)CSS文件,到那時(shí)你的效率會(huì)高出許多。

  然而,暴風(fēng)彬彬更崇尚那種拆分布局風(fēng)格,也就是給每種布局一個(gè)單獨(dú)的CSS文件。AndyClarke的《超越CSS》(TranscendingCSS)一書(shū)也是提倡這種方法。#p#

6.記錄你的工作

  


 如果你是一個(gè)設(shè)計(jì)團(tuán)隊(duì)中的一員,那么讓你的代碼保持規(guī)則的一致性并能與其他成語(yǔ)建立良好的溝通是相當(dāng)重要的,而且還要建立一種網(wǎng)站的標(biāo)準(zhǔn)。例如,團(tuán)隊(duì)中的某個(gè)成員想出了一個(gè)比較不錯(cuò)的網(wǎng)站標(biāo)簽切換界面,記錄下來(lái)這些想法和注解會(huì)幫助團(tuán)隊(duì)的其他成員再次使用這種效果,這樣能夠避免HTML或CSS代碼的臃腫。

記錄工作主要包括標(biāo)記向?qū)?markupguides)和樣式表向?qū)?stylesheetguides),這種工作并不僅僅適用于團(tuán)隊(duì),也同樣適用于一個(gè)人的設(shè)計(jì)工作(一個(gè)人的”團(tuán)隊(duì)”)。畢竟,在完整一個(gè)設(shè)計(jì)項(xiàng)目之后,經(jīng)過(guò)一年甚至更長(zhǎng)的時(shí)間,當(dāng)你再回來(lái)看到這些曾經(jīng)自己寫(xiě)的代碼時(shí),也一樣會(huì)覺(jué)得很陌生。將來(lái)你會(huì)通過(guò)自己曾經(jīng)的記錄了解到在那些CSS結(jié)構(gòu)是如何讓網(wǎng)頁(yè)表現(xiàn)的,或那個(gè)網(wǎng)頁(yè)對(duì)表單按鈕的起到副作用。記住,一定要養(yǎng)成為CSS寫(xiě)注釋的習(xí)慣。

7.壓縮使用

為了使得瀏覽器節(jié)省更多下載個(gè)載入時(shí)間,壓縮是一個(gè)不錯(cuò)的解決方案,但是僅限于發(fā)布的時(shí)候。YUICompressor和CSSTidy就是這樣方面的專(zhuān)家,他們能夠去除多余的代碼,校驗(yàn)屬性互相覆蓋的錯(cuò)誤。

許多流行的編輯器,比如BBEdit,TextMate,和TopStyle都能夠幫助你格式化你的CSS代碼成你想要的樣子。你還能通過(guò)服務(wù)器壓縮技術(shù)使用PHP處理你的CSS。你可以找到更多的CSS優(yōu)化和壓縮的CSS工具。

有一點(diǎn),這些程序盡可能會(huì)降低錯(cuò)誤的發(fā)生,但并不是***的。同樣,***不要用他們?nèi)ヌ幚戆珻SShack的文件。這也是另一個(gè)讓那些hack儲(chǔ)存在另外的文件里的原因。

總結(jié):

整理和優(yōu)化代碼不僅是為了你的CSS文件大小,還包括了維護(hù)性和可讀性。以上的原理并不只是針對(duì)CSS,它們還能應(yīng)用到HTML,Javascript以及其他編程語(yǔ)言。CSS文件不只是為了呈現(xiàn)給你網(wǎng)站的最終用戶(hù)。上面的原理可以幫助用戶(hù)體驗(yàn)以及開(kāi)發(fā)者經(jīng)驗(yàn)。運(yùn)用這些原則到你未來(lái)的項(xiàng)目中,一定能夠獲得重大的成效。

【編輯推薦】

  1. CSS樣式表優(yōu)化秘訣
  2. FireFox和IE中CSS兼容技巧匯總
  3. CSS屬性font-size用法詳解
  4. 探究采用DIV+CSS框架的利與弊
  5. DIV CSS網(wǎng)頁(yè)布局需要掌握的八大技巧

 

責(zé)任編輯:佚名 來(lái)源: 236web.com
相關(guān)推薦

2017-07-11 05:03:54

數(shù)據(jù)分析大數(shù)據(jù)數(shù)據(jù)

2010-09-14 13:49:38

CSS代碼

2010-08-16 13:35:21

數(shù)據(jù)庫(kù)設(shè)計(jì)

2012-07-25 11:14:19

經(jīng)理創(chuàng)業(yè)

2012-03-15 11:15:13

Java設(shè)計(jì)模式

2010-09-09 13:54:06

DIV CSS

2025-02-17 11:02:11

2012-03-07 10:40:19

Java設(shè)計(jì)模式

2012-03-05 13:58:34

設(shè)計(jì)模式里氏置換

2012-03-07 11:03:13

Java設(shè)計(jì)模式

2010-03-31 17:26:52

SaaS

2012-03-08 10:57:00

Java設(shè)計(jì)模式

2024-10-14 09:52:39

軟件項(xiàng)目開(kāi)發(fā)軟件項(xiàng)目估算

2011-09-07 09:21:01

設(shè)計(jì)模式

2020-06-09 07:00:00

面向?qū)ο?/a>編程編程原則

2015-09-23 17:12:18

API設(shè)計(jì)原則

2015-09-24 08:52:53

API設(shè)計(jì)原則

2012-02-01 13:24:37

2019-12-27 15:16:34

設(shè)計(jì)人工智能開(kāi)發(fā)
點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)