`

ie6是怎么理解!improtant【转】

 
阅读更多

!improtant但是,这里没有!important,为什么呢?
因为在W3C里规定,!important不论是在内联或是外联CSS样式表中,其级别都是最高级。所以不需要将其列入Specificity计算之中。
p{ color:red !important; } p{ color:blue; }

结果color:red
说到这里,需要说明一下IE6的特殊情况。大家都说IE6不支持!important其实是错误的!只能说IE6对!important解释有Bug,但不是不支持。
e.g.
/first/
p{ color:red !important; } p{ color:blue; }
/second/
p{ color:red !important; } #ys p{ color:blue; }
/third/
p{ color:red !important; color:blue; }

结果只有最后一种在ie6下显示的是blue,其他都是显示red。
这说明在IE6下是可以用!important,但是选择器内的属性必需为唯一,不然IE6最以最后一个属性显示结果。
另外在IE6中还有另一个Specificity Bug就是伪类中的:hover与:visited,这个留心的朋友可能会注意到。
ie specificity bug
深入了解Specificity将对构建大型的CSS框架起到关键性的作用。

分享到:
评论

相关推荐

Global site tag (gtag.js) - Google Analytics