使用!important标签来防止程序员覆盖设计

时间:2010-08-19 15:29:55

标签: css

我在CSS中使用!important标记优先于后来的规则。

然而,我意识到如果另一个程序员在后来的规则中定义了!重要的,分配的样式将是最新的!重要的。

例如: 我的css - 首先加载。

#div{
    color: green !important;
}

程序员的CSS:

#div {
    color: red !important;
}

它会是红色的,虽然我希望它是绿色的。

修复它的合适方法是在</body>标记结束之前下载我的CSS吗?如果页面无法快速加载怎么办?在文档的开头和结尾下载它是对的吗?

2 个答案:

答案 0 :(得分:1)

适当的事情几乎从不使用!important,部分是因为你提到的原因。 !important意味着,我的规则是第一位的,除非其他规则也有!important,此时奇怪且充满异国情调的CSS特性会踢进去。确保你的规则比他们更具体。< / p>

要了解有关特异性的更多信息,请阅读Chris Coyier的excellent introduction

答案 1 :(得分:1)

您可以增加规则的特异性。

实施例: 选择器“#div”的规则不如“#div .test”具体。 如果两个规则有!important,那么更具体的胜利。


但是,当然,程序员可以制定更具体的规则。

例: 您更改为#myBody #div,然后更改为html #myBody #div。 所以,你不能阻止程序员覆盖你的规则。

请参阅here