Warning: file_get_contents(/data/phpspider/zhask/data//catemap/7/css/39.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181

Warning: file_get_contents(/data/phpspider/zhask/data//catemap/6/ant/2.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Css 为伪元素覆盖子元素的最佳方法(例如:before)_Css_Pseudo Element_Css Specificity - Fatal编程技术网

Css 为伪元素覆盖子元素的最佳方法(例如:before)

Css 为伪元素覆盖子元素的最佳方法(例如:before),css,pseudo-element,css-specificity,Css,Pseudo Element,Css Specificity,我有一个非常复杂的下拉菜单,几乎每个部分和子部分都有不同的图标,这导致了一个我很难控制的问题 例如,在父菜单中,我有如下内容: ul.parent .t1 a:before {background-position: 12px -49px;width:34px;} ul.parent .t1 > a:before { /* CSS rules */ } 在.t1的children菜单中,没有:before伪元素,但它拾取父元素的伪元素 我现在要做的是向sub-UL添加一个新类,

我有一个非常复杂的下拉菜单,几乎每个部分和子部分都有不同的图标,这导致了一个我很难控制的问题

例如,在父菜单中,我有如下内容:

ul.parent .t1 a:before {background-position: 12px -49px;width:34px;}
ul.parent .t1 > a:before {
    /* CSS rules */
}
在.t1的children菜单中,没有:before伪元素,但它拾取父元素的伪元素

我现在要做的是向sub-UL添加一个新类,并声明它:

ul.sub-child li a:before {width:0!important}

由于菜单的复杂性,我想知道是否有一种聪明的方法可以覆盖特定性。

如果只想设置元素的直接子元素的样式,请使用>

在您的情况下,我不知道确切的HTML结构,但类似于以下内容:

ul.parent .t1 a:before {background-position: 12px -49px;width:34px;}
ul.parent .t1 > a:before {
    /* CSS rules */
}

这只将规则应用于.t1的直接子级的a:before,而不是所有子级

首先请注意,您可以按content:none声明删除生成的内容。第二,我使用直接后代选择器A>B,而不是后代选择器AB,这有助于区分嵌套元素。