[转载]IE678兼容性前缀区分
符合一贯简单的风格,只需记住两个符号 _ 和 *
看例子:
#main {
background:black;
*background:red;
_background:blue;
}
第一句会被所有浏览器承认,于是背景是黑的;
第二句只有ie67认,于是只有ie67的背景变红;
第三句只有ie6认,于是只有ie6变蓝。
注意书写顺序反了没有效果,CSS是按顺序解释,后一个会覆盖前面的。
ie8对标准的支持已经很好了,不好的地方可以在实现方法上微调,一般来说写好ie8,什么火狐chrome或opera都没问题。如果有问题,换个写法就能搞定,对业余玩家来说,掌握这个让搞浏览器兼容变得简单了。
希望对要写模板,但对CSS兼容不精通的朋友有帮助。
PS:在这个浏览器纷争的年代,搞前端比前人后人都辛苦……直到万恶的ie死掉或改变版本升级策略
感谢楼主,不过楼主的方法过不了W3C认证,我补充一下
正常
#main {
background:black;
}
IE6
* html #main {
background:red;
}
IE 7
* +html #main {
background:blue;
}
IE8
在Head里面增加
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
强制要求IE8用IE7兼容模式渲染页面
}
IE6
* html #main {
background:red;
}
IE 7
* +html #main {
background:blue;
}
IE8
在Head里面增加
<meta http-equiv="X-UA-Compatible" content="IE=EmulateIE7" />
强制要求IE8用IE7兼容模式渲染页面