IE6支持!important吗 如何用!important解决浏览器兼容性问题
"!important"是什么?
第一个,是设置样式的优先级,设了!important的样式的属性优先于id选择器和class选择器 。 , 比如id为"Main"的div在它的Class设背景色为红色,,id选择器下又设了背景色为蓝色 , 照css的"就近原则",它的背景色应该是红色了 , 因为id选择器的优先级高于class选择器,但是,一旦class里设了"!important",哈哈,id,一边去吧 。。我背景颜色要优先显示class设置的啦,因为它有!important做后台呀 。
第二个,可以利用它让页面效果在ff等浏览器上和ie6效果更相同 。因为不同的浏览器有自己默认的样式,所以你设一个样式在不同的浏览器里会有不同的效果,而有了!important,你就可以 。。。话说,这里先略过 , 偶也没怎么用!important解决浏览器兼容性问题 。
就是说,它是解决浏览器兼容性问题的有效方法之一 。
先把代码贴出来:

在查看其他人这方面的文章的时候,发现很多误区,有人干脆就认为"ie都是不支持!important"这个属性的,而有的人则又认为"ie6是不支持这个属性的",呵呵,其实"ie6不是不支持,只是有个小bug",欢迎讨论,指教,在不同的意见中提高技术 。
某些懂一些css的朋友大概会说,是ie6不支持"!important",呵呵,这话说得有些对,但是不全对,为什么呢?
关键原因就是如果把样式改一下:

【IE6支持!important吗 如何用!important解决浏览器兼容性问题】
你会发现在ie下字体的颜色变得和在FF中一样了,而如果ie6真的不支持"!important"这个属性的话,ie下字体的颜色就应该是绿色 , 而不是红色,因为按照css的"就近原则"来说,字体的颜色一直都应该是绿色 , 而不是红色的 。
但是 为什么我们把样式改了之后,字体颜色在FF和ie6下就不一样了呢 , 这应该是ie6下的一个bug,如果一个样式内重复设了属性,如"color:*",它就会忽略掉"!important"了 。
呵呵 , 这样样式CSS1就有了,但一直没有很好的发挥它的作用,但是其实,我们可以利用它来解决一些浏览器兼容性问题造成的异常,做到让页面尽量在不同浏览器之间看起来一样 。
IE6对!important的支持是这样的,单个的类是支持的,比如:

这样是支持的 , 但是:

这样是不支持的 。
相关经验推荐
- IE7浏览器窗口大小改变事件执行多次bug及IE6/IE7/IE8下resize问题
- 荣耀10青春版支不支持NFC
- JS 滚动事件window.onscroll与position:fixed写兼容IE6的回到顶部组件
- js判断浏览器是否支持严格模式的方法
- 兼容到IE6 JS上传图片预览插件制作
- js和jQuery设置Opacity半透明 兼容IE6
- java中实现兼容ie6 7 8 9的spring4+websocket
- jQuery解决IE6、7、8不能使用 JSON.stringify 函数的问题
- jQuery实现最简单的切换图效果【可兼容IE6、火狐、谷歌、opera等】
- 打开IE浏览器提示"浏览器不支持js,导致部分功能缺失"的故障原因及解决方法
