CSS中!important的作用解析
程序员文章站
2022-06-04 23:00:22
css中!important的作用
css中!important的作用
添加{*rule !important} ,就能对ie6.0,ie7.0和firefox写hack
*对于ie系列都能够识别,...
css中!important的作用
css中!important的作用添加{*rule !important} ,就能对ie6.0,ie7.0和firefox写hack
*对于ie系列都能够识别,firefox浏览器就不能识别;
!important只有ie7.0和firefox可以识别,,但是ie6.0不能成功应用
区别
(1)区别ie与firefox的hack为:border:2px solid #f00;*border:1px solid #f00;
(2)区别ie6.0 与ie7.0、firefox的hack为:border:1px solid #f00!important;border:2px solid #f00;
解析
在(1)中,之所以把*放在后面是因为firefox不识别*而导致只对它设置了一次border;而ie 系列进行了两次border设置后,后一个属性覆盖了前一个属性,故为一像素的边框。
在(2)中,之所以把!important放在第一个border 设置,是因为它把这次border的优先级提高了,即使后面在一次甚至在n次设置border 也无效,但是ie6.0对这个规则不接受,而导致它应用了第二次的border 设置,也就是第二次覆盖了第一次的这一原理, 并不是它不识别!important;所以它的border为2 像素的红框.
例子
css
1 #box {
2 color:red !important;
3 color:blue;
4 }
html
1
在不同的浏览器下,这行字的色应该不同!
这个例子应该是大家经常见到的important的用法了,在ie环境下,这行字是蓝色,在firefox下,为红色