高效整潔CSS代碼原則 (下)

6. 適當的代碼註釋

代碼註釋可以讓別人更容易讀懂你的代碼,且合理的組織代碼註釋,可使得結構更加清晰。你可以選擇做的樣式表的開始添加目錄:

/*------------------------------------ 
1. Reset 
 2. Header 
 3. Content 
 4. SideBar 
 5. Footer 

 ----------------------------------- */ 

如此你代碼的結構就一目瞭然,你可以容易的查找和修改代碼。

而對於代碼的主內容,也應適當的加以劃分,甚至在有必要的地方在對代碼加以註釋說明,這樣也有利於團隊開發:

/*** Header ***/
#header{ height:145px; position:relative; }
#header h1{ width:324px; margin:45px 0 0 20px; float:left; height:72px;}
/*** Content ***/
#content{ background:#fff; width:650px; float:left; min-height:600px; overflow:hidden;}
#content h1{color:#F00}/* 設置字體顏色 */
#content .posts{ overflow:hidden; }
#content .recent{ margin-bottom:20px; border-bottom:1px solid #f3f3f3; position:relative; overflow:hidden; }
/*** Footer ***/
#footer{ clear:both; padding:50px 5px 0; overflow:hidden;}
#footer h4{ color:#b99d7f; font-family:Arial, Helvetica, sans-serif; font-size:1.1em; }

7. 給你的CSS代碼排序

如果代碼中的屬性都能按照字母排序,那查找修改的時候就能更加快速:

/*** 樣式屬性按字母排序 ***/
div{
background-color:#3399cc;
color:#666;
font:1.2em/1.4em Arial, Helvetica, sans-serif;
height:300px;
margin:10px 5px;
padding:5px 0 10px 5px;
width:30%;
z-index:10;
}

8. 保持CSS的可讀性

書寫可讀的CSS將會使得更容易查找和修改樣式。對於以下兩種情況,哪種可讀性更高,我想不言而明。

/*** 每個樣式屬性寫一行 ***/
div{
background-color:#3399cc;
color:#666;
font: 1.2em/1.4em Arial, Helvetica, sans-serif;
height:300px;
margin:10px 5px;
padding:5px 0 10px 5px;
width:30%;
z-index:10;
}
/*** 所有的樣式屬性寫在同一行 ***/
div{ background-color:#3399cc; color:#666; font: 1.2em/1.4em Arial, Helvetica, sans-serif; height:300px; margin:10px 5px; padding:5px 0 10px 5px; width:30%; z-index:10; }

當對於一些樣式屬性較少的選擇器,我會寫到一行:

/*** 選擇器屬性少的寫在同一行 ***/
div{ background-color:#3399cc; color:#666;}

對於這個規則並非硬性規定,但無論您採用哪種寫法,我的建議是始終保持代碼一致。屬性多的分行寫,屬性少於3個可以寫一行。

9. 選擇更優的樣式屬性值

CSS中有些屬性採用不同的屬性值,雖然達到的效果差不多,當性能上卻存在着差異,如

區別在於border:0把border設爲0px,雖然在頁面上看不見,但按border默認值理解,瀏覽器依然對border-width/border-color進行了渲染,即已經佔用了內存值。
 而border:none把border設爲"none"即沒有,瀏覽器解析"none"時將不作出渲染動作,即不會消耗內存值。所以建議使用border:none;

同樣的,display:none隱藏對象瀏覽器不作渲染,不佔用內存。而visibility:hidden則會。

10. 使用<link>代替@import

首先,@import不屬於XHTML標籤,也不是Web標準的一部分,它對於較早期的瀏覽器兼容也不高,並且對於網站的性能有某些負面的影響。

11. 使用外部樣式表

這個原則始終是一個很好的設計實踐。不單可以更易於維護修改,更重要的是使用外部文件可以提高頁面速度,因爲CSS文件都能在瀏覽器中產生緩存。內置在HTML文檔中的CSS則會在每次請求中隨HTML文檔重新下載。所以,在實際應用中,沒有必要把CSS代碼內置在HTML文檔中:

<style type="text/css" >
#container{ .. }
#sidebar{ .. }
< /style>

而是使用<link>導入外部樣式表:<link rel="stylesheet" type="text/css" href="css/styles.css" />

12. 避免使用CSS表達式(Expression)

CSS表達式是動態設置CSS屬性的強大(但危險)方法。Internet Explorer從第5個版本開始支持CSS表達式。下面的例子中,使用CSS表達式可以實現隔一個小時切換一次背景顏色:

background-color: expression( (new Date()).getHours()%2 ? "#B8D4FF" : "#F08A00" );

如上所示,expression中使用了JavaScript表達式。CSS屬性根據JavaScript表達式的計算結果來設置。

表達式的問題就在於它的計算頻率要比我們想象的多。不僅僅是在頁面顯示和縮放時,就是在頁面滾動、乃至移動鼠標時都會要重新計算一次。給CSS表達式增加一個計數器可以跟蹤表達式的計算頻率。在頁面中隨便移動鼠標都可以輕鬆達到10000次以上的計算量。

如果必須使用CSS表達式,一定要記住它們要計算成千上萬次並且可能會對你頁面的性能產生影響。所以,在非不得已,請避免使用CSS表達式。

13. 代碼壓縮

當你決定把網站項目部署到網絡上,那你就要考慮對CSS進行壓縮,出去註釋和空格,以使得網頁加載得更快。壓縮您的代碼,可以採用一些工具,如YUI Compressor,利用它可精簡CSS代碼,減少文件大小,以獲得更高的加載速度。

(如果您覺得本站不錯,請告訴身邊的朋友,或轉載到論壇、百度知道、貼吧等,記得帶網址喲,不勝感激!)

文章出處:標準之路(http://www.aa25.cn/Tech/925.shtml)

發表評論
所有評論
還沒有人評論,想成為第一個評論的人麼? 請在上方評論欄輸入並且點擊發布.
相關文章