让IE6也认识!important

!important一般用来做区分IE6和Firefox等浏览器的基本Hack手法。因为IE6不支持!important,而Firefox能读懂!important,其改变了样式的优先级。其实IE6在某些情况下,也能认识!important。

例如:

 

<style type="text/css">
.demo{
    color:red !important;
    color:green;
}
</style>
<div class="demo">www.admin10000.com</div>

 

上面代码在FF下字体为红色、IE6下字体为绿色。说明IE6忽视!important的存在。

再来看看:

<style type="text/css"> 
.demo{ color:red !important; } 
.demo { color:green; } 
</style> 
<div class="demo">www.admin10000.com</div> 

 

如果IE6不认!important的话,上面代码.demo的内容应该显示为绿色,可偏偏不是,.demo的内容显示为红色,说明IE6是认得!important的。

两种情况的区别就在于:当在一个选择器中,利用!important改变样式优先级的时候,IE6下是无效的,后面的样式覆盖了前面 的,!important被彻底无视了,利用!important进行hack正是利用了这一点。而当在不同选择器中应用!important时,IE6 是认得!important的。

posted @ 2015-01-15 18:09  dsphper  阅读(201)  评论(0编辑  收藏  举报