CSS頂級(jí)技巧大放送,div+css布局必知
更新時(shí)間:2008年04月22日 12:16:27 作者:
最近給所有的CSSer提出了一些寫CSS時(shí)候的“頂級(jí)技巧”。好多css使用技巧包括css縮寫,一行內(nèi)聲明css,分塊書寫代碼等實(shí)用技巧
字體大小使用px
在一行內(nèi)聲明CSS
對(duì)比下面兩個(gè):
h2 {font-size:18px; border:1px solid blue; color:#000; background-color:#FFF;}
h2 {
font-size:18px;
border:1px solid blue;
color:#000;
background-color:#FFF;
}
第二種看起來的確格式化,但是不會(huì)在閱讀上有任何幫助。寫在一行內(nèi)可以讓你更快的找到需要的部分。
以前我也是寫成類似第二種方式,但是逐漸發(fā)現(xiàn)就像文章說的一樣,沒多大用。一行看起來又爽快又省地方還能讓文件更小。
分塊書寫代碼
這樣書寫代碼可以讓CSS更頁面化,在出現(xiàn)問題時(shí)候可以最短時(shí)間內(nèi)找到問題所在。就像下面這樣:
#content {float:left;}
#content p { … }
#sidebar {float:left;}
#sidebar p { … }
#footer {clear:both;}
#sidebar p { … }
瀏覽器支持
只支持最新的瀏覽器。也就是說要放棄IE5和IE5.5。這樣一來就能省下很多時(shí)間。對(duì)于IE6來說不用使用盒模型Hack。如果只針對(duì)流行瀏覽器的話,只需要很少的Hack就能實(shí)現(xiàn)同樣的效果。
我注意了一下網(wǎng)易新版主頁的CSS,其中竟然一個(gè)!important或者Hack都沒有,可是在FF和IE里面顯示效果都很好。合理的使用CSS可以避免Hack。當(dāng)然,調(diào)試的時(shí)間會(huì)多一些。
包含浮動(dòng)元素
所有在容器內(nèi)的內(nèi)容都應(yīng)該被設(shè)計(jì)為和容器保持一致。如果過大的話就會(huì)滑動(dòng)到錯(cuò)誤位置。使用負(fù)值margin調(diào)整到容器外同樣會(huì)導(dǎo)致滑動(dòng)。
理解Overflow
如果頁面中有兩個(gè)浮動(dòng)元素,在左容器內(nèi)輸出過多內(nèi)容的話就會(huì)導(dǎo)致右側(cè)容器跑到下面。這也就是說你的margin、寬度或者padding設(shè)置混亂了,不過在FF里面體現(xiàn)不出來。使用overflow:hidden或者overflow:scroll可以避免IE允許內(nèi)容沖出容器。
允許塊元素自動(dòng)填充空白
縮寫CSS
很多人都margin-top、margin-right、margin-bottom、margin-left的用上一堆。其實(shí)這是最基本的,margin可以直接簡寫為margin:上 右 下 左值??梢栽谶@里看到CSS縮寫的總結(jié)。
避免不必要的選擇器
把樣式的選擇器減少到最少。如果你發(fā)現(xiàn)自己不停的寫ul li {}或者table tr td{}就證明寫的過于詳細(xì)了。更少的選擇器會(huì)讓你更容易的發(fā)現(xiàn)問題。
我沒有完全翻譯,而且其中還有很多我自己的話,呵呵。
在一行內(nèi)聲明CSS
對(duì)比下面兩個(gè):
h2 {font-size:18px; border:1px solid blue; color:#000; background-color:#FFF;}
h2 {
font-size:18px;
border:1px solid blue;
color:#000;
background-color:#FFF;
}
第二種看起來的確格式化,但是不會(huì)在閱讀上有任何幫助。寫在一行內(nèi)可以讓你更快的找到需要的部分。
以前我也是寫成類似第二種方式,但是逐漸發(fā)現(xiàn)就像文章說的一樣,沒多大用。一行看起來又爽快又省地方還能讓文件更小。
分塊書寫代碼
這樣書寫代碼可以讓CSS更頁面化,在出現(xiàn)問題時(shí)候可以最短時(shí)間內(nèi)找到問題所在。就像下面這樣:
#content {float:left;}
#content p { … }
#sidebar {float:left;}
#sidebar p { … }
#footer {clear:both;}
#sidebar p { … }
瀏覽器支持
只支持最新的瀏覽器。也就是說要放棄IE5和IE5.5。這樣一來就能省下很多時(shí)間。對(duì)于IE6來說不用使用盒模型Hack。如果只針對(duì)流行瀏覽器的話,只需要很少的Hack就能實(shí)現(xiàn)同樣的效果。
我注意了一下網(wǎng)易新版主頁的CSS,其中竟然一個(gè)!important或者Hack都沒有,可是在FF和IE里面顯示效果都很好。合理的使用CSS可以避免Hack。當(dāng)然,調(diào)試的時(shí)間會(huì)多一些。
包含浮動(dòng)元素
所有在容器內(nèi)的內(nèi)容都應(yīng)該被設(shè)計(jì)為和容器保持一致。如果過大的話就會(huì)滑動(dòng)到錯(cuò)誤位置。使用負(fù)值margin調(diào)整到容器外同樣會(huì)導(dǎo)致滑動(dòng)。
理解Overflow
如果頁面中有兩個(gè)浮動(dòng)元素,在左容器內(nèi)輸出過多內(nèi)容的話就會(huì)導(dǎo)致右側(cè)容器跑到下面。這也就是說你的margin、寬度或者padding設(shè)置混亂了,不過在FF里面體現(xiàn)不出來。使用overflow:hidden或者overflow:scroll可以避免IE允許內(nèi)容沖出容器。
允許塊元素自動(dòng)填充空白
縮寫CSS
很多人都margin-top、margin-right、margin-bottom、margin-left的用上一堆。其實(shí)這是最基本的,margin可以直接簡寫為margin:上 右 下 左值??梢栽谶@里看到CSS縮寫的總結(jié)。
避免不必要的選擇器
把樣式的選擇器減少到最少。如果你發(fā)現(xiàn)自己不停的寫ul li {}或者table tr td{}就證明寫的過于詳細(xì)了。更少的選擇器會(huì)讓你更容易的發(fā)現(xiàn)問題。
我沒有完全翻譯,而且其中還有很多我自己的話,呵呵。
相關(guān)文章
HTML5擴(kuò)展itemscope,?itemtype,?itemprop微數(shù)據(jù)的解釋和應(yīng)用
微數(shù)據(jù)是一種用于在HTML頁面中標(biāo)記內(nèi)容的規(guī)范,以便機(jī)器能夠識(shí)別和理解特定類型的信息,通過使用特定的標(biāo)簽、屬性和格式,微數(shù)據(jù)的語法包括itemscope、itemprop和itemtype等屬性,可以用來定義和組織數(shù)據(jù)項(xiàng),微數(shù)據(jù)的廣泛應(yīng)用可以改善搜索結(jié)果的質(zhì)量,為用戶提供更好的瀏覽體驗(yàn)2024-12-12
CSS規(guī)則層疊的應(yīng)用 css必須要注意的幾點(diǎn)
前幾天,我解釋了 CSS規(guī)則層疊時(shí)的算法 雖然看起來復(fù)雜,但是在實(shí)際應(yīng)用過程中,還不算太復(fù)雜,因?yàn)橹T如user style和inline style之類的東西我們很少考慮。2008-04-04

