一个CSS规则如何覆盖另一个CSS规则?
所以,这就是我正在做的:
#id-form td {padding: 0 0 10px 0;
}
#particular-td {
border: 1px solid black;
text-align: center;
background-color: #DFDFDF;
height: 30px;
padding: 10px;
}
我有一张桌子#id-form
,上面放着所有td
的桌子padding-bottom: 10px
。
但是在一个特殊的场合,我希望一个特定的对象在各个方向td
都有padding: 10px
,我将其设置为#particular-td
。
显然,我将CSS样式依次放在一个外部文件中。
但是渲染的CSS仅具有padding-bottom
,并且padding: 10px
似乎已被覆盖!
请说明:
这是怎么发生的以及为什么发生?
我应该如何安排这些规则来解决我的问题(除了内联样式)?
编辑:我在表中删除'table'
之前#id-form
。我从来没有使用过它,我只是在这里提到它以便能够更好地解释它。
回答:
由于CSS的特殊性。选择器的权重将根据组成它的组件进行评估,其中id
的权重为100,class
es的权重为10,element
选择器的权重为1。
因此,在您的示例中:
table#id-form td
的权重为102(table#id
为101且td
为1),而这是:
#particular-td
权重为100。如果将第二个权重改为:
#id-form #particular-td
您将获得200的权重,它将覆盖先前的选择器。仅在万不得已的情况下,才可以使用!important
,因为这很可能会阻止您覆盖它。
以上是 一个CSS规则如何覆盖另一个CSS规则? 的全部内容, 来源链接: utcz.com/qa/421990.html