小编典典

CSS优先级

css

我的网页包含:

<link href="/Content/Site.css" rel="stylesheet" type="text/css" />
<style type="text/css">
td {
    padding-left:10px;
} 
</style>

引用的样式表包含:

.rightColumn * {margin: 0; padding: 0;}

我在rightcolumnID中有一张表格,希望单元格有一些填充。但是,引用的样式表优先于内联样式。我可以通过Firebug直观地看到这一点。如果我关闭padding:0Firebug中的指令,则向左填充将生效。

我该padding-left如何上班?


阅读 259

收藏
2020-05-16

共1个答案

小编典典

正如其他人提到的那样,您有一个特异性问题。当确定两个规则中的哪一个优先时,CSS引擎会计算#id每个选择器中的s
数量。如果一个比另一个多,就使用它。否则,它将继续以相同方式比较.classes和tags。在这里,您在样式表规则上有一个类,但在内联规则上没有类,因此样式表优先。

您可以使用来覆盖它!important,但这是在这里使用的巨大锤子。您最好改善内联规则的特异性。根据您的描述,听起来您的.rightColumn元素要么是要么包含a,table并且您希望该表中的单元格具有额外的间距?如果是这样,则您要查找的选择器是“
.rightColumn td”,它比样式表规则更具体,并且具有优先权。

2020-05-16