在CSS中重要的是什么?
可能重复:
在CSS中使用“!important”有什么意义?
你如何阅读!在CSS中很重要?
在CSS中!important
的是什么?
仅用于css2,css3,IE吗?
这实质上就是说,它的意思; “这是重要的,忽略随后的规则,以及任何通常的特殊性问题,应用这个规则!
在正常使用中,在外部样式表中定义的规则被在文档head
定义的样式所取代,反过来,在元素自身内部被串联样式推翻(假定选择器具有相同的特殊性)。 用!important
“属性”(?)定义一个规则就会忽略关于覆盖“较早的”规则的“后来的”规则的正常问题。
此外,通常,更具体的规则将覆盖较不具体的规则。 所以:
a { /* css */ }
通常被推翻:
body div #elementID ul li a { /* css */ }
后面的选择器更具体一些(通常情况下,不是在哪里找到更具体的选择器(在head
或外部样式表中),它仍然会覆盖较不具体的选择器(内联样式属性将总是覆盖“更多”或“更少”特定的选择器,因为它总是更具体。
但是,如果您对不太具体的选择器的CSS声明重要,那么它将具有优先权。
使用!important
有其目的(虽然我很难想象它们),但这很像使用核爆炸来阻止狐狸杀死你的鸡。 是的,狐狸会被杀死,但鸡也是。 和邻里。
这也使得调试你的CSS是一个噩梦(从个人,经验,经验)。
!重要的规则是一种使你的CSS级联的方法,但也有你觉得最重要的规则总是被应用。 无论规则出现在CSS文档中的哪个位置,都将始终应用具有!important属性的规则。
所以,如果你有以下几点:
.class { color:red !important; } .outerClass .class { color:blue; }
重要的规则将是应用的规则(不包括特异性 )
我相信!important
的CSS1出现,所以每个浏览器都支持它(IE4到IE6的部分实现,IE7 +全)
此外,这是你不想经常使用的东西,因为如果你与其他人一起工作,你可以覆盖其他属性。
!important
是CSS1的一部分。
支持它的浏览器:IE5.5 +,Firefox 1+,Safari 3+,Chrome 1+。
这意味着,像这样:
用我吧,如果周围什么都不重要的话!
不能说更好。
它用于影响CSS级联中的排序。 这与其他答案中的特殊性无关。
这是从低到高的优先级:
- 浏览器样式
- 用户样式表声明(不含!重要)
- 作者样式表声明(不含!重要)
- !重要的作者样式表
- !重要的用户样式表
之后 ,特定的规则仍然有一个手指在馅饼。
参考文献:
它改变了CSS级联优先级的规则。 请参阅CSS2规范 。