CSS hack:針對(duì)不同的瀏覽器寫不同的CSS code的過程。
Css hack的原理:由于不同的瀏覽器對(duì)CSS的支持及解析結(jié)果不一樣,還由于CSS中的優(yōu)先級(jí)的關(guān)系。我們就可以根據(jù)這個(gè)來針對(duì)不同的瀏覽器來寫不同的CSS。
瀏覽器優(yōu)先級(jí)別:FF < IE7 < IE6
書寫順序一般是將識(shí)別能力強(qiáng)的瀏覽器的CSS寫在后面,CSS hack書寫順序一般為FF IE7 IE6
div+css瀏覽器兼容IE6,IE7,FF之間的標(biāo)識(shí)區(qū)別:
IE6 | IE7 | FF | |
* | √ | √ | × |
important | × | √ | √ |
1. IE都能識(shí)別* ; 標(biāo)準(zhǔn)瀏覽器(如FF)不能識(shí)別*;
2. IE6能識(shí)別*,但不能識(shí)別 !important,
3. IE7能識(shí)別*,也能識(shí)別!important;
4. firefox不能識(shí)別*,但能識(shí)別!important;
1.IE6和firefox的區(qū)別:
background:orange;*background:blue;
意思就是火狐瀏覽器的背景顏色是橙色,而IE瀏覽器的背景色是藍(lán)色.
2. IE6和IE7的區(qū)別:
background:green !important;background:blue;
意思指的是:IE7的背景顏色是綠色,IE6的背景顏色是藍(lán)色
3. IE7和FF的區(qū)別:
background:orange; *background:green;
意思指的是:火狐瀏覽器的背景顏色是橙色,而IE7的背景顏色是綠色
4. FF,IE7,IE6的區(qū)別:
background:orange;
*background:green !important;
*background:blue;
意思是火狐瀏覽器的的背景橙色,IE7瀏覽器的背景顏色是綠色,而IE6瀏覽器的顏色是藍(lán)色.
(一). 開發(fā)平臺(tái)的選擇
在 Firefox 上編寫CSS, 同時(shí)兼容其他瀏覽器的. 這樣做肯定會(huì)比在 IE 做好再到別的瀏覽器兼容來得容易, 因?yàn)?IE 對(duì)老標(biāo)準(zhǔn)支持還是很不錯(cuò)的, 而 IE 的一些特有功能人家卻不支持. 所以推薦以 Firefox 結(jié)合 Firebug 擴(kuò)展作為平臺(tái)。
(二). CSS Hack 的順序
使用 Firefox 作為平臺(tái), 只要代碼寫得夠標(biāo)準(zhǔn), 其實(shí)要 Hack 的地方不會(huì)很多的, IE 以外的瀏覽器幾乎都不會(huì)有問題, 所以可以暫時(shí)忽略,
順序如下:Firefox -> IE6 -> IE7 -> 其他
(三). Hack 的方法
說到方法有兩種, 一種是在不同文件中處理, 另一種則是在同一個(gè)文件中處理. 其實(shí)作用是相同的, 只是出發(fā)點(diǎn)不一樣而已.
1. 同一文件中處理.
如: id="bgcolor" 的控件要在 IE6 中顯示藍(lán)色, IE7 中顯示綠色, Firefox 等其他瀏覽器中顯示紅色。

新聞熱點(diǎn)
疑難解答
圖片精選