我在网站的 CSS 页面中有以下代码
left: 0 !important;
这!important
在这段代码中究竟意味着什么?
我以前从未在任何地方见过这种情况。
CSS意味着样式在浏览器读取时按顺序应用。
应用第一个样式,然后应用第二个样式,依此类推。
这意味着如果一个样式出现在样式表的顶部,然后在文档中向下更改,则该样式的第二个实例将被应用,而不是第一个。
例如,在下面的样式表中,段落文本将是黑色的,即使应用的第一个样式属性是红色的:
p { color: #ff0000; }
p { color: #000000; }
该!important
规则是一种使您的 CSS 级联的方法,但也有您认为最重要的规则始终被应用。
!important
无论该规则出现在 CSS 文档中的什么位置,都将始终应用具有该属性的规则。
因此,如果您想确保始终应用某个属性,您可以将 !important 属性添加到标签中。
因此,要使段落文本始终为红色,在上面的示例中,您将编写:
p { color: #ff0000 !important; }
p { color: #000000; }
意味着,它会覆盖该元素的所有其他声明。更多关于级联顺序的信息在这里 http://www.w3.org/TR/CSS21/cascade.html#cascading-order
!important
是 CSS 中用于覆盖其他样式的指令,这些样式可能位于级联的下方或元素的内联样式属性中。
例如:
.myDiv
{
color: blue !important;
}
body .myDiv
{
color: red;
}
颜色将是蓝色,因为它被设置为重要,即使另一个选择器更具体。
这意味着它会覆盖设置为同一元素或父元素之一的任何其他 css left 属性
这意味着,该声明覆盖所有其他代码。
例子:
div{
left: 0px !important;
}
div {
left: 100px;
}
所以 div 是0px left,因为!important
它忽略了left: 100px;
来自微软
CSS 试图在作者和用户样式表之间建立“权力平衡”。默认情况下,作者样式表中的规则会覆盖用户样式表中的规则。但是,为了平衡,!important 声明优先于普通声明。作者和用户样式表都可能包含 !important 声明,并且用户 !important 规则覆盖作者 !important 规则。