CSS頂級技巧大放送,div+css布局必知
更新時(shí)間:2008年04月22日 12:16:27 作者:
最近給所有的CSSer提出了一些寫CSS時(shí)候的“頂級技巧”。好多css使用技巧包括css縮寫,一行內(nèi)聲明css,分塊書寫代碼等實(shí)用技巧
字體大小使用px
在一行內(nèi)聲明CSS
對比下面兩個(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;
}
第二種看起來的確格式化,但是不會在閱讀上有任何幫助。寫在一行內(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í)間。對于IE6來說不用使用盒模型Hack。如果只針對流行瀏覽器的話,只需要很少的Hack就能實(shí)現(xiàn)同樣的效果。
我注意了一下網(wǎng)易新版主頁的CSS,其中竟然一個(gè)!important或者Hack都沒有,可是在FF和IE里面顯示效果都很好。合理的使用CSS可以避免Hack。當(dāng)然,調(diào)試的時(shí)間會多一些。
包含浮動元素
所有在容器內(nèi)的內(nèi)容都應(yīng)該被設(shè)計(jì)為和容器保持一致。如果過大的話就會滑動到錯(cuò)誤位置。使用負(fù)值margin調(diào)整到容器外同樣會導(dǎo)致滑動。
理解Overflow
如果頁面中有兩個(gè)浮動元素,在左容器內(nèi)輸出過多內(nèi)容的話就會導(dǎo)致右側(cè)容器跑到下面。這也就是說你的margin、寬度或者padding設(shè)置混亂了,不過在FF里面體現(xiàn)不出來。使用overflow:hidden或者overflow:scroll可以避免IE允許內(nèi)容沖出容器。
允許塊元素自動填充空白
縮寫CSS
很多人都margin-top、margin-right、margin-bottom、margin-left的用上一堆。其實(shí)這是最基本的,margin可以直接簡寫為margin:上 右 下 左值??梢栽谶@里看到CSS縮寫的總結(jié)。
避免不必要的選擇器
把樣式的選擇器減少到最少。如果你發(fā)現(xiàn)自己不停的寫ul li {}或者table tr td{}就證明寫的過于詳細(xì)了。更少的選擇器會讓你更容易的發(fā)現(xiàn)問題。
我沒有完全翻譯,而且其中還有很多我自己的話,呵呵。
在一行內(nèi)聲明CSS
對比下面兩個(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;
}
第二種看起來的確格式化,但是不會在閱讀上有任何幫助。寫在一行內(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í)間。對于IE6來說不用使用盒模型Hack。如果只針對流行瀏覽器的話,只需要很少的Hack就能實(shí)現(xiàn)同樣的效果。
我注意了一下網(wǎng)易新版主頁的CSS,其中竟然一個(gè)!important或者Hack都沒有,可是在FF和IE里面顯示效果都很好。合理的使用CSS可以避免Hack。當(dāng)然,調(diào)試的時(shí)間會多一些。
包含浮動元素
所有在容器內(nèi)的內(nèi)容都應(yīng)該被設(shè)計(jì)為和容器保持一致。如果過大的話就會滑動到錯(cuò)誤位置。使用負(fù)值margin調(diào)整到容器外同樣會導(dǎo)致滑動。
理解Overflow
如果頁面中有兩個(gè)浮動元素,在左容器內(nèi)輸出過多內(nèi)容的話就會導(dǎo)致右側(cè)容器跑到下面。這也就是說你的margin、寬度或者padding設(shè)置混亂了,不過在FF里面體現(xiàn)不出來。使用overflow:hidden或者overflow:scroll可以避免IE允許內(nèi)容沖出容器。
允許塊元素自動填充空白
縮寫CSS
很多人都margin-top、margin-right、margin-bottom、margin-left的用上一堆。其實(shí)這是最基本的,margin可以直接簡寫為margin:上 右 下 左值??梢栽谶@里看到CSS縮寫的總結(jié)。
避免不必要的選擇器
把樣式的選擇器減少到最少。如果你發(fā)現(xiàn)自己不停的寫ul li {}或者table tr td{}就證明寫的過于詳細(xì)了。更少的選擇器會讓你更容易的發(fā)現(xiàn)問題。
我沒有完全翻譯,而且其中還有很多我自己的話,呵呵。
相關(guān)文章
區(qū)分IE6,IE7,firefox的CSS hack
經(jīng)常網(wǎng)頁布局需要兼職多瀏覽器,所以下面的css hack可以用,但最好少用,不得不用才用2008-04-04Zen Coding css,html縮寫替換大觀 快速寫出html,css
本文是在zen使用生產(chǎn)中遇到的問題做一些分享。2011-01-01不通過JavaScript實(shí)現(xiàn)的自動滾動視差效果
這篇文章介紹了一種通過CSS3實(shí)現(xiàn)的視差(Parallax)效果,這個(gè)效果通過在一個(gè)元素上疊加多個(gè)背景圖片,并使用-webkit- transition-屬性來實(shí)現(xiàn)。2009-04-04CSS學(xué)習(xí)筆記Padding 屬性中參數(shù)的定義與使用
css padding縮寫技巧2008-05-05關(guān)于< tbody >的一個(gè)實(shí)例,很實(shí)用。
tbody Tab選項(xiàng)卡效果代碼關(guān)鍵只是在<tbody>和選項(xiàng)卡的設(shè)置上。我在6個(gè)<tr></tr>段分別設(shè)置了<tbody></tbody>,目的是為了讓一個(gè)javascript程序調(diào)用6個(gè)選項(xiàng)卡的時(shí)候可以循環(huán)設(shè)置tBodies屬性。調(diào)用的時(shí)候是采用了遍歷:將6個(gè)tBodies先全部都初始化為display='none',然后緊接著將tBodies[n]設(shè)置為display='block',將這一個(gè)tBodies顯示出來。2008-03-03