css hack 如何区分 ie7 ie8

html-css027

css hack 如何区分 ie7 ie8,第1张

IE8 的hack,很多人用\9,但是有人测出来用\0更好。

使用数字测试的结果列表请看图片。

如果想看分析,请看参考资料。

使用\9的hack如下:

.test{

color:#000000                  /* FF,OP支持 */

color:#0000FF\9       /* 所有IE浏览器(ie6+)支持 ;但是IE8不能识别“*”和“_”的css hack;所以我们可以这样写hack */

[color:#000000color:#00FF00      /* SF,CH支持 */

*color:#FFFF00                 /* IE7支持 */

_color:#FF0000               /* IE6支持 */

}

使用\0的hack如下:

.test{

color:#000000                  /* FF,OP支持 */

color:#0000FF\0       /* IE8支持*/

[color:#000000color:#00FF00      /* SF,CH支持 */

*color:#FFFF00                 /* IE7支持 */

_color:#FF0000              /* IE6支持 */

}

利用css hack实现,具体代码如下:

<div style="border:5px solid #f00display:inline-block*display:inlinezoom:1min-width:220pxpadding:12px">

最小宽度,最小宽度,最小宽度,最小宽度,最小宽度

</div>

代码说明:

1、min-width:220px;本身在ie7下是不起作用的(不兼容),通过display:inline-block让其他非IE7浏览器实现min-width效果;

2、但是ie7没实现display:inline-block(不兼容)

3、引入css hack代码:*display:inline,即可实现IE7min-width:220px。