IE8瀏覽器中正式版CSS hack技術(shù)用法
本文向大家描述一下IE8 CSS hack技術(shù)的用法,IE8正式版出來有一段日子了,但是針對(duì)IE8正式版的CSS hack卻很少,其實(shí)這是值得慶幸的,因?yàn)镮E8修復(fù)了很多IE6和IE7的一些BUG,更加接近W3C標(biāo)準(zhǔn)。
IE8 CSS hack技術(shù)
針對(duì)IE8正式版的CSS hack目前可以找到的分為2種:
***種:”\9″:
基本的寫法:
1..test{color/*\**/:blue\9}
這個(gè)IE6、IE7、IE8都能識(shí)別;但是IE8不能識(shí)別“*”和“_”的csshack;所以我們可以這樣寫hack:
- 1..header{width:300px;}/*所有瀏覽器*/
- 2..header{width/*\**/:330px\9;}/*所有瀏覽器IE瀏覽器*/
- 3..header{*width:310px;}/*IE7和IE6能識(shí)別,IE8和FF不能識(shí)別*/
- 4..header{_width:290px;}/*IE6能識(shí)別,IE7、IE8和FF不能識(shí)別*/
第二種:就是使用IE的條件注釋
條件注釋是IE特有的一種功能,能對(duì)IE系列產(chǎn)品進(jìn)行單獨(dú)的XHTML代碼處理,注意,主要是針對(duì)XHTML,而非CSS。
條件注釋功能非常強(qiáng)大,可以進(jìn)行true和false判斷,例如:
程序代碼
- <!–[ifIE]>此內(nèi)容只有IE可見<![endif]–>
- <!–[ifIE6.0]>此內(nèi)容只有IE6.0可見<![endif]–>
條件注釋能被IE判斷是什么版本的瀏覽器,并在符合條件的情況下顯示其中的內(nèi)容,從IE5.0到7.0都支持注釋功能,而且版本號(hào)精確到小數(shù)點(diǎn)后4位:
程序代碼
- <!–[ifIE6.1000]>此內(nèi)容只有IE6.1可見<![endif]–>
IE條件注釋還支持感嘆號(hào)非操作:
程序代碼
- <!–[if!IE6.0]>此內(nèi)容除了IE6.0版本之外都可見<![endif]–>
并且支持前綴,用于判斷更高版本或是更低版本:
程序代碼
- <!–[ifgtIE5.0]>此內(nèi)容只有IE5.0以上版本可見<![endif]–>
這里的gt全稱為greaterthan表示當(dāng)前條件版本以上版本,但不包含當(dāng)前版本。
還有其它幾個(gè)前綴:
lt表示lessthan當(dāng)前條件版本以下的版本,不包含當(dāng)前版本。
gte表示greeterthanorequal當(dāng)前版本以上版本,并包含當(dāng)前版本。
lte表示lessthanorequal當(dāng)前版本以下版本,并包含當(dāng)前版本。
其他一些csshack的測試:
- 1..color1{color:#F00;color/*\**/:#00F/*\**/}/*IE6,IE7,IE8,FF,OP,SA識(shí)別*/
- 2..color2{color:#F00;color/*\**/:#00F/*\9**/}/*IE7,IE8,FF,OP,SA識(shí)別*/
- 3..color3{color:#F00;color/*\**/:#00F\9}/*IE6,IE7,IE8識(shí)別*/
- 4..color4{color:#F00;color/*\**/:#00F\9}/*IE7,IE8識(shí)別*//
- *“color”和“/*\**/”之間有個(gè)空格*/
其中:OP表示Opera,SA表示Safari
【編輯推薦】
- CSS hack技術(shù)在IE8瀏覽器中的應(yīng)用
- 探究CSS hack使用原理 規(guī)則及弊端
- 深入探究DIV CSS布局中position屬性用法
- CSS屬性display:inline-block使用揭秘
- CSS hack:實(shí)現(xiàn)IE6、IE7、Firefox兼容