為了適應(yīng)不同瀏覽器不同的版本(版本主要就ie來(lái)說(shuō)),ie這朵奇葩現(xiàn)在我們要兼容6-9,它的10也快出來(lái)了。。在ie下我們可以寫條件注釋來(lái)區(qū)分ie和其他瀏覽器,以及ie的版本,這些請(qǐng)大家自行g(shù)oogle。這篇文章主要討論的是css hack。下面廢話補(bǔ)多說(shuō)了,直接上代碼
1 2 3 4 5 6 7Css Hack 8 9 40 41 42 43 44 45 test 46 47 48 49
上面這段代碼大家可以直接copy出來(lái),保存成html在各瀏覽器試試。下面我來(lái)分析下:
各個(gè)瀏覽器都認(rèn)識(shí),這里給firefox用;
\9所有的ie瀏覽器可識(shí)別;
\0 是留給ie8的,但筆者測(cè)試,發(fā)現(xiàn)最新版opera也認(rèn)識(shí),汗。。不過(guò)且慢,后面自有hack寫了給opera認(rèn)的,所以,\0我們就認(rèn)為是給ie8留的;
+background-color:pink; + ie7定了;
_ _專門留給神奇的ie6;
:root #test { background-color:purple\9; } :root是給ie9的,網(wǎng)上流傳了個(gè)版本是 :root #test { background-color:purple\0;},呃。。這個(gè)。。,新版opera也認(rèn)識(shí),所以經(jīng)筆者反復(fù)驗(yàn)證最終ie9特有的為:root 選擇符 {屬性\9;}
@media all and (min-width:0px){ #test {} } 這個(gè)是老是跟ie搶著認(rèn)\0的神奇的opera,必須加個(gè)\0,不然firefox,chrome,safari也都認(rèn)識(shí)。。
@media screen and (-webkit-min-device-pixel-ratio:0){ #test {background-color:gray;} }最后這個(gè)是瀏覽器新貴chrome和safari的。
好了就這么多了,特別注意以上順序是不可以改變的。css hack雖然可以解決個(gè)瀏覽器之間css顯示的差異問(wèn)題,但是畢竟不符合W3C規(guī)范,我們平時(shí)寫css最好是按照標(biāo)準(zhǔn)來(lái),這樣對(duì)我們以后維護(hù)也是大有好處的,實(shí)在不行再用。
如果給位看官有更好的css hack寫法或者本文有不妥之處,歡迎留言,第一次寫文章,請(qǐng)輕砸。
轉(zhuǎn)自:http://www.cnblogs.com/WuQiang/archive/2011/08/23/2150240.html
聲明:本網(wǎng)頁(yè)內(nèi)容旨在傳播知識(shí),若有侵權(quán)等問(wèn)題請(qǐng)及時(shí)與本網(wǎng)聯(lián)系,我們將在第一時(shí)間刪除處理。TEL:0731-84117792 E-MAIL:11247931@qq.com