IE8的CSS hack

CSS兼容性一直是大家头疼的问题,IE6、IE7和FF已经让大家够呛,而IE8正式版发布以来,一直在找一种区别IE8正式版的方法。


1.区别IE和非IE浏览器

#tip {
background
:blue; /*非IE 背景藍色*/
background
:red \9; /*IE6、IE7、IE8背景紅色*/
}


2.区别IE6,IE7,IE8,FF

【区别符号】:「\9」、「*」、「_」
#tip {
background
:blue; /*Firefox 背景变蓝色*/
background
:red \9; /*IE8 背景变红色*/
*background
:black; /*IE7 背景变黑色*/
_background
:orange; /*IE6 背景变橘色*/
}
【说明】:因为IE系列浏览器可读「\9」(也看到有用"9的 margin:0px auto“9;),而IE6和IE7可读「*」(米字号),另外IE6可辨识「_」(底线),因此可以依照顺序写下来,就会让浏览器正确的读取到自己看得懂得CSS语法,所以就可以有效区分IE各版本和非IE浏览器(像是Firefox、Opera、Google Chrome、Safari等)。

 

汇总下IE各版本的css hack。

hack 示例 IE6(S) IE6(Q) IE7(S) IE7(Q) IE8(S) IE8(Q)
* *color Yes Yes Yes Yes No Yes
+ +color Yes Yes Yes Yes No Yes
- -color Yes Yes No No No No
_ _color Yes Yes No Yes No Yes
# #color Yes Yes Yes Yes No Yes
\0 color\0 No No No No Yes No
\9 color\9 Yes Yes Yes Yes Yes Yes
!important color:blue !important;
color:green;
No No Yes No Yes No

原文地址:https://www.cnblogs.com/joe235/p/1688817.html