我知道有很多相似的问题,但其中任何一个都无济于事。在一个特定的div我需要从这个div的上一层清除所有的css格式。
例如“h2”有一个所有网站的风格是粉红色和它的罚款,但在class =“foo”h2需要重置黑色,但如果我想我可以把任何其他类放在foo div和h2下红色将可用。
一般h2>粉红色
<h2>I am pink</h2>
<div class="foo">
<h2>I am black</h2>
</div>
<div class="foo">
<div class="somestyle">
<h2>I am red</h2>
</div>
</div>
感谢您的帮助
答案 0 :(得分:1)
来自父元素的CSS插入,因此从与HTML结构匹配的目标make声明中获取HTML树:
.foo h2 { color:#000000 }
.foo .somestyle h2 { color:#ff0000 }
答案 1 :(得分:0)
您可以使用!important
指令
看看:important
答案 2 :(得分:0)
如果您将h2
元素全局声明为粉红色,则需要考虑css(或级联)中的优先顺序,而不管它在哪里都会被视为粉红色。除非您在某个类下指定不同的样式,否则它将被更改。因此,在您的情况下,css将如下所示:
h2 {
color:pink;
}
•所有h2
元素都将显示为粉红色
.foo h2 {
color: black;
}
•在.foo
课程下,所有h2
个元素都会显示为黑色。
.somestyle h2 {
color:red;
}
•在.somestyle
班级下,所有h2
个元素都会显示为红色。
您可以通过更具体的选择器来解决这个问题,例如:
.somestyle .foo h2 {
color:blue;
}
•在这里,您选择了h2
元素,该元素是.foo
的孩子,他是.somestyle
的孩子,并且颜色不同。请注意该选择器.somestyle .foo
的细节,而不是像.foo
那样不太具体的选择器。
注意订单的编写方式。首先给出全局h2
样式,然后在其他类下指定不同的颜色来覆盖该顺序。所以关于组织。
这是一篇关于优先顺序的好文章:http://www.vanseodesign.com/css/css-specificity-inheritance-cascaade/
注意:我不建议您使用!important声明,因为它会破坏规则的自然流动,而是使用适当的特定选择器。