Html 如何防止css继承?

Html 如何防止css继承?,html,css,Html,Css,当你在CSS类中添加样式时,CSS有什么烦人的地方,它可能会自己应用其他元素/类 预防这种情况的最佳方法是什么 例如: HTML: 我不希望“测试二”有背景色 测试:使用实际选择所需元素的选择器。在这种情况下,,就足够了 .main-content > span { background: #921192; color: white; padding: 3px 4px; margin: 0 5px; } 使用.main content>span,它只选择直

当你在CSS类中添加样式时,CSS有什么烦人的地方,它可能会自己应用其他元素/类

预防这种情况的最佳方法是什么

例如:

HTML:

我不希望“测试二”有背景色


测试:

使用实际选择所需元素的选择器。在这种情况下,
,就足够了

.main-content > span {
    background: #921192;
    color: white;
    padding: 3px 4px;
    margin: 0 5px;
}

使用
.main content>span
,它只选择直接的子元素。

您可以使用此选项

.main-content > span {
background: #921192;
color: white;
padding: 3px 4px;
margin: 0 5px;
}

如果您使用like
.main content>span
,则该样式只会影响
类的
直接子级
span。main content
类与继承无关


要正确使用CSS,请使用仅与您希望影响的元素匹配的选择器为元素指定属性。(给出的例子太过人为,无法进行有用的分析,也无法提供更好方法的建设性建议。)

只需在根元素处使用all:initial

.selector 
{
    all: initial;
}

不幸的是,不在CSS中继承是不可能的。如果不希望某个特定跨距没有特定的样式,则必须将其指定为目标并覆盖样式,或者必须将其他跨距(例如,使用类)指定为目标并将样式应用于这些跨距。@n OP描述的问题实际上不是样式继承问题,只是一个选择题,但我认为这个问题可以有更一般的答案。最好使用类。。。
.main-content > span {
background: #921192;
color: white;
padding: 3px 4px;
margin: 0 5px;
}
.selector 
{
    all: initial;
}