有人可以说避免使用!重要规则,有人可以说ID是唯一的,因此您不需要定位#main > #child
,只需使用#child
。
但在我的情况下:
#main > div{
color: red;
}
#child{
color: blue;/*won't override*/
}
!important
会覆盖。#main > #child{
将覆盖。那么,最好使用哪一个?
答案 0 :(得分:0)
答案 1 :(得分:0)
最佳做法是使用概念而不是内容来定位您的风格。
例如,为了使某些东西变得更好,它就更好:<div class="red"></idiv>
和CSS:
.red{
background-color: red;
}
如果它有其他属性如大,或宽或其他东西:
<div class="big red">
和CSS:
.big{
font-size: 2em;
}
.red{
background-color: red;
}
现在,有一些东西可以覆盖你,可以使用!important
,这样就可以避免使用ID
了,你最好保留JS
} - DOM Manipulation
目的:)
解释更多
这是一个糟糕的设计:
<强> HTML 强>
<div id="main">
<div id="child">
</div>
</div>
<强> CSS 强>
#main{
font-size: 2em;
background-color: red;
}
#main > #child{
font-size: 1.5em;
background-color: blue;
}
,因为:
#child
更高或更低,该怎么办?请注意,许多设计不会像这个例子那么简单!main:red
或main:2em
组合的概念含义是什么?你考虑red:red
&amp;这些big:2em
组合更加灵活。答案 2 :(得分:-1)
总是尽量避免使用!important
我会选择第二种选择。使用!important
时,css的未来变化将很难。
唯一可以覆盖“!important”规则的是另一个规则,它必须在较低的位置指定,并且其选择器必须具有相同(或更高)的特异性级别。