最新CSS兼容方案
文章来自: | 发表时间:2007-12-11 13:27:20
最新CSS兼容方案
最新的CSS兼容方案,让你的样式完美兼容各大浏览器,这个方案主要是用来解决Safari的,Opear是在测试的时候顺带试了一下,结果发现竟然也行,所以顺便也解决了。
.e {/*FF OP*/
background-color: #FF0000
}
html* .e{/*Sa IE7 OP*/
background-color:#FF00FF
}
*+html .e{
background-color:#000000;/*OP*/
*background-color:#0000FF;/*IE7*/
}
* html .e{/*IE6*/
background-color:#00FFFF
}
经FF2、OP9.21、OP9.10、Sa3.0.3(pc)、IE7、IE6测试通过,如果你在其他的浏览器版本上测试过,欢迎给我留言,把结果告诉我。
需要注意的是:IE7对样式的解释跟DTD是有关,在没有DTD的时候,IE7是能读取IE6的hack的。
/* for all */
.e {
background-color: #FF0000
}
/* for IE 7 6 5.5 Safari Knoqueror */
html* .e{
background-color:#FF00FF
}
/* for IE 5 7 */
*+html .e{
background-color:#000000;
/* for IE 5 5.5 6 7 */
*background-color:#0000FF;
}
/* for IE 5 5.5 6 */
* html .e{
background-color:#00FFFF
}
第一个规则让所有浏览器背景红色,
第二个规则让IE 7 6 5.5 Safari Knoqueror背景紫色,IE 5 Gecko Opera 还是红色;
第三个规则的第一个声明把IE7 IE5改成黑色,Gecko Opera红色, IE6 5.5 Safari Knoqueror还是紫色;
第三个规则的第二个声明把IE7 IE5又把改成蓝色(这个多余的),Gecko Opera红色, IE6 5.5 Safari Knoqueror还是紫色;
第三个规则又把IE 5 5.5 6改成淡蓝,最后是IE7蓝色,Gecko Opera红色 ,Safari Knoqueror紫色。
很无聊的继承了,又被覆盖,建议那张纸把浏览器列出了,然后一个一个划掉