IE8 Beta1、IE7、IE6、Firefox2.0.0.12的一些CSS HACK测试
对IE8、IE7、IE6、Firefox2.0.0.12做了简单的一些CSS HACK测试。下文中的 IE8 暂时仅代表IE8 beta1)。
CSS定义:p {color:#f00;}
xhtml结构:<p>文字</p>
主要是测试“文字”这个颜色在不同浏览器下使用hack的一些结果报告:
* html p {color:#f00;} |
支持 IE6 |
不支持FF IE7 IE8b1 |
*+html p {color:#f00;} |
支持 IE7 IE8b1 |
不支持FF IE6 |
p {*color:#f00;} |
支持 IE7 IE6 |
不支持FF IE8b1 |
相关测试:
p {+color:#f00;} |
支持IE7 IE6 |
不支持FF IE8b1 |
p {_color:#f00;} |
支持IE6 |
不支持FF |
p {color:#00f !important;} p {color:#f00;} |
支持IE6 IE7 IE8b1 FF |
|
p {color:#00f !important;color:#f00;} |
支持IE7 IE8b1 FF |
不支持IE6 |
head:first-child+body p {color:#f00;} |
支持IE7 IE8b1 FF |
不支持IE6 |
/**//*/ p {color:#f00;} /**/ |
支持IE8b1 |
不支持IE6 IE7 FF |
html*p {color:#f00;} |
支持IE6 IE7 |
不支持IE8b1 FF |
body>p {color:#f00;} |
支持IE7 IE8b1 FF |
不支持IE6 |
html[xmlns] p {color:#f00;} |
支持IE7 IE8b1 FF |
不支持IE6 |
@import ‘style.css’; @import “style.css”; @import url(style.css); @import url(‘style.css’); @import url(“style.css”); |
支持IE6 IE7 IE8b1 FF |
|
P {/*/*color:#f00;/* */} |
支持IE6 IE7 FF |
不支持IE8b1 |
IE8 中增加了 CSS3 中的子串匹配的属性选择器(substring matching attribute selectors),具体规则与正则中的匹配很相似:
E[att^=’val’] //子串以’val’ 开始
E[att$=’val’] //子串以’val’ 结束
E[att*=’val’] //子串中包含’val’
IE8 支持绝大多数基本的 CSS2.1 选择器,不支持的包括但不限于:[:first-line] 、[:first-letter]。
对于 CSS2.1 中的 generated content 部分,即通过使用伪元素 :before 和 :after 添加文本内容,IE8 中支持 并未完全 。
而对于几乎在其他浏览器中都支持的 opacity 和 RGBA ,IE8 中依旧没有支持。
对于原来用来区分 IE 的 HACK 在 IE8 中基本失效(比如*property:value、*property:value等)。
原有 IE 的 list-item whitespace bug 在 IE8 中依旧存在。
原有 IE 的 z-index bug 在 IE8 中依旧存在。
IE8 中产生新的 bug:当 line-heigth 小于正常值时,超出的部分将被裁切掉。
IE8 中依然不支持 display:table 。
IE8 中依然不支持 border 的 transparent 值。
IE8 中 @import 只支持三层嵌套。
IE8中 border的 transparent 不被支持
IE8中产生新的BUG:line-heigth BUG
/*/p{ color:#1e90ff}/*/ 只针对IE8的hack,可以是属性也可以是类
本文固定链接: http://www.nuniao.com/ie8-ie7-ie6-css-hack-of-firefox2-0-0-12-test.html | 驽鸟公寓
:em08: 我今天已经更新到ie8 beta1了…
2008-04-08 12:35 下午**********
还行!但是发现支付宝不能用了!
不管在IE8还是IE7兼容模式,都不能用了!