important在CSS中是什么意思?
在css2中可用吗?CSS 3 ?
哪里支持它?所有现代浏览器?
important在CSS中是什么意思?
在css2中可用吗?CSS 3 ?
哪里支持它?所有现代浏览器?
本质上,它的意思就是它所说的;“这很重要,忽略后续规则,以及任何常见的具体问题,应用这条规则!”
在正常使用中,定义在外部样式表中的规则被定义在文档头部的样式所覆盖,而文档头部的样式又被元素本身中的内联样式所覆盖(假设选择器的特异性相同)。用!important '属性'(?)定义规则会丢弃“较晚的”规则覆盖“较早的”规则的正常关注点。
此外,通常情况下,更具体的规则将覆盖不那么具体的规则。所以:
a {
/* css */
}
通常由:
body div #elementID ul li a {
/* css */
}
由于后一种选择器更特定(通常情况下,更特定的选择器在哪里(在头部或外部样式表中)并不重要),它仍然会覆盖不太特定的选择器(内联样式属性总是会覆盖'more-'或'less-',特定的选择器,因为它总是更特定。
但是,如果您将!important添加到不太特定的选择器的CSS声明中,则它将具有优先级。
使用!important有它的目的(尽管我很难想到它们),但它很像使用核爆炸来阻止狐狸杀死你的鸡;是的,狐狸会被杀死,但鸡也会被杀死。还有周围的邻居。
这也使得调试CSS成为一场噩梦(从个人、经验和经验来看)。
important是CSS1的一部分。
支持的浏览器:IE5.5+、Firefox 1+、Safari 3+、Chrome 1+。
它的意思是:
如果周围没有其他重要的事,就用我吧!
不能说得更好。
important规则是一种使你的CSS级联的方法 你认为最重要的规则一定要应用。一个规则 important属性将始终被应用,无论在哪里 规则出现在CSS文档中。
所以,如果你有以下情况:
.class {
color: red !important;
}
.outerClass .class {
color: blue;
}
重要的规则将被应用(不包括特异性)
我相信!important出现在CSS1中,所以每个浏览器都支持它(IE4到IE6的部分实现,IE7+完整)
另外,它是你不想经常使用的东西,因为如果你和其他人一起工作,你可以覆盖其他属性。
当按原点排序时,它用于影响CSS级联中的排序。 这与其他答案中所述的特异性无关。
以下是优先级从低到高:
浏览器的风格 用户样式表声明(不含!important) 作者样式表声明(没有!重要) 重要的作者样式表 重要的用户样式表
在此之后,专一性发生在仍然有手指在馅饼的规则。
引用:
http://www.w3.org/TR/CSS2/cascade.html#cascade https://russmaxdesign.github.io/maxdesign-slides/02-css/207-css-cascade.html