一、什么是CSS Hack?
不同的瀏覽器對CSS的解析結果是不同的,因此會導致相同的CSS輸出的頁面效果不同,這就需要CSS Hack來解決瀏覽器局部的兼容性問題。而這個針對不同的瀏覽器寫不同的CSS 代碼的過程,就叫CSS Hack。
CSS Hack常見的有三種形式:CSS屬性Hack、CSS選擇符Hack以及IE條件注釋Hack, Hack主要針對IE瀏覽器。
1、屬性級Hack:比如IE6能識別下劃線”_”和星號” * “,IE7能識別星號” * “,但不能識別下劃線”_”,而firefox兩個都不能認識。
2、選擇符級Hack:比如IE6能識別*html .class{},IE7能識別*+html .class{}或者*:first-child+html .class{}。
3、IE條件注釋Hack:IE條件注釋是微軟從IE5開始就提供的一種非標準邏輯語句。比如針對所有IE:<!–[if IE]><!–您的代碼–><![endif]–>,針對IE6及以下版本:<!–[if lt IE 7]><!–您的代碼–><![endif]–>,這類Hack不僅對CSS生效,對寫在判斷語句里面的所有代碼都 會生效。
PS:條件注釋只有在IE瀏覽器下才能執行,這個代碼在非IE瀏覽下被當做注釋視而不見。可以通過IE條件注釋載入不同的CSS、JS、HTML和服務器代碼等。
二、常用的CSS Hack
新聞熱點
疑難解答