DIV CSS 佈局教程網

 DIV+CSS佈局教程網 >> 網頁腳本 >> CSS入門知識 >> CSS詳解 >> CSS樣式表優化更整潔而簡短
CSS樣式表優化更整潔而簡短
編輯:CSS詳解     

 CSS簡寫就是指將多行的CSS屬性聲明化成一行,又稱為CSS代碼優化。CSS簡寫的最大好處就是能夠顯著減少CSS文件的大小,其實還有很多其他益處。臃腫而雜亂的CSS樣式表會使你遇到問題是難以調試。尤其是當一個團隊在進行設計的時候,你的臃腫的CSS代碼會使你的團隊其他成員的工作效率下降。

  今天,整理了一些CSS簡寫技巧,它們其實是CSS最常用的寫法,但是太多的人使用Dreamweaver這種所見即所得軟件來編寫CSS,使得代碼過於臃腫。不過沒關系,看過本文之後,你一能能掌握CSS代碼優化的技巧,今後讓你的每一個CSS樣式表都看起來整潔而簡短吧。

屬性值為0

書寫原則是如果CSS屬性值為0,那麼你不必為其添加單位(如:px/em),你可能會這樣寫:

padding: 10px 5px 0px 0px;

試試這樣吧:

padding: 10px 5px 0 0;

移除選擇器

  選擇器是你在為一些元素應用CSS樣式時的基本方法,比如h1, h2, h2, div, strong, pre, ul, ol等等…如果你使用了class(.類名)或ID(#id名),那麼就不用再在聲明CSS時包含選擇器了。

div#logowrap

嘗試扔掉多余的選擇器吧:

#logowrap

在這個例子中所謂的那個選擇器就是div

*總愛和你開玩笑

  要明智的使用*而避免它在整個CSS樣式表中亂開玩笑,*是個通配符,你可以使用它來為你的設計部分或全部進行一系列CSS聲明。例如:

* {
    margin: 0; 
}

這個聲明會將所有元素的margin值設置為0,同樣的,為了嚴謹起見,你可以嘗試這樣設置:

#menu * {
    margin: 0; 
}

這樣的聲明是指將#menu下的所有元素的margin設為0。

背景

  背景(background)屬性可能會包含設置背景色、背景圖、背景圖的位置和背景圖重復方式的參數,你可能會寫成:

background-image: url(”logo.png”);
background-position: top center;
background-repeat: no-repeat;

其實可以寫成:

background: url(logo.png) no-repeat top center;

顏色

  顏色(color)屬性在CSS通常指定為一個十六進制的值,一個#加6位數,他的簡寫方式是如果顏色值由成對兒出現的三對而數字組成,你可以省略掉沒對中的一個數字。

  #000000 可以寫成 #000, #336699 可以寫成 #369

  這種簡寫技巧只適用於成對出現的顏色值,其它顏色值不適用這種技巧,比如:

  #010101, #223345, #FFF000

Margin(外邊距/空白邊)

聲明CSS magin值得時候通常會寫成這樣:

margin-top:0px;
margin-right:10px;
margin-bottom:0px;
margin-left:10px;

讓我們試試把值為0的單位去掉,並把4條聲明合並成一條聲明:

margin:0 10px 0 10px;

當你生命padding、margin、border(還有一些其他屬性)時,記得要把按照順時針的方向來聲明屬性值,也就是按照上-右-下-左的方向。關於這些屬性還有另一個更加簡單的寫法,看看屬性中上和下、左和右是否值是相等的,如果是那麼就可以進一步優化了,你可以省略掉後兩個值,剩下的兩個值前者指上下,後者指左右:

margin:0 10px;

它是指左右的值為10px,上下的值為0;

Padding(內邊距)

padding的簡寫技巧等同於margin:

padding-top:0px;
padding-right:10px;
padding-bottom:0px;
padding-left:10px;

可以寫成:

padding: 0 10px;

Borders(邊框)

  邊框的簡寫方式相比其它生命來說會比較復雜,很多CSSer一開始都容易記混它的簡寫順序,如果你想聲明一個1像素寬的實線黑色邊框,可能會寫成:

border-width:1px;
border-style:solid;
border-color:#000;

其實可以寫成:

border:1px solid #000;

注意:這裡的顏色值已經使用了上面講過的顏色簡寫方法了哦。

我們還可以為四個邊設置不同的寬度:

border-top-width:1px;
border-right-width:2px;
border-bottom-width:3px;
border-left-width:4px;

可以簡寫成:

border-width:1px 2px 3px 4px;

最後,我們還可以只設置左和右的邊的樣式:

border-right:1px solid #000;
border-bottom:1px solid #000;

雖然並沒減少多少代碼,但暴風彬彬建議寫成這樣:

border:1px solid #000;
border-width:0 1px 1px 0;

先設置四個邊的默認風格,然後聲明具體的哪個邊要顯示。

文字

  文字屬性也有很多可能會用到的屬性值,像背景一樣,你可能會聲明這種復雜的文字樣式:

font-style:italic;
font-variant:small-caps;
font-weight:bold;
font-size:1em;
line-height:150%;
font-family:宋體, Arial, sans-serif;

其實可以優化成一行:

font:italic small-caps bold 1em/150% 宋體, Arial, sans-serif;

列表

list-style-type:square;
list-style-position:inside;
list-style-image:url(filename.gif);

可以寫成:

list-style:square inside url(filename.gif);

希望暴風彬彬總結的這10個CSS縮寫技巧能對你的CSS書寫有所幫助

XML學習教程| jQuery入門知識| AJAX入門| Dreamweaver教程| Fireworks入門知識| SEO技巧| SEO優化集錦|
Copyright © DIV+CSS佈局教程網 All Rights Reserved