CSS hack

來自:http://blog.csdn.net/freshlover/article/details/12132801#t3

CSS hack:針對不同的瀏覽器/不同版本寫相應的CSS code的過程

CSS hack的原理:
不同的瀏覽器和瀏覽器各版本對CSS的支持及解析結果不一樣,以及CSS優先級對瀏覽器展現效果的影響,針對不同的瀏覽器情景來應用不同的CSS

CSS hack分類:
(1)屬性前綴法 (即類內部Hack):在CSS樣式屬性名前加上一些只有特定瀏覽器才能識別的hack前綴,以達到預期的頁面展現效果。例如 IE6能識別下劃線”_”和星號”“,IE7能識別星號”“,但不能識別下劃線”_”,IE6~IE10都認識”\9”,但firefox前述三個都不能認識。
(2)選擇器前綴法 (即選擇器Hack):在CSS選擇器前加上一些只有某些特定瀏覽器才能識別的前綴進行hack。例如 IE6能識別 *html .class{},IE7能識別+html .class{}或者*:first-child+html .class{}。
(3)IE條件註釋法 (即HTML條件註釋Hack,IE專有,官方推薦): 針對所有IE(注:IE10+已經不再支持條件註釋): <!--[if IE]>IE瀏覽器顯示的內容 <![endif]-->,針對IE6及以下版本: <!--[if lt IE 6]>只在IE6-顯示的內容 <![endif]-->

CSS hack利弊:
利:顧及用戶體驗實現向下兼容,使用hack。對頁面表現的一致性有好處。
弊:過多的濫用會造成html文檔混亂不堪,增加管理和維護的負擔。

少用、慎用hack。

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