This question already has answers here:
Is there a CSS parent selector?
(31个答案)
5年前关闭。
我有至少有一个可能符合或不符合特定条件的内联块子元素的块父元素。我想给父样式设置样式,以突出显示特定子类型的存在(“特殊”类下方):
通常,这不是问题,因为我只是通过JavaScript在父类上放置了一个等效类。但是,在这种情况下,我正在为Firefox附加组件“时尚”编写样式表,因此我无法访问JavaScript DOM,并且只能使用现有内容。我在网上找到的解决方案包括:
但是,我可以找到的有关此问题的最新信息是2013年或更早的版本,并且上述所有方法似乎不再是CSS规范的一部分(或至少在Firefox v32.0.x中不起作用) 。
如果任何人都可以对此提供指导(即使只是告诉我它做不到),我将不胜感激。请记住,它只能在Firefox中运行,因此即使它是“ -moz”解决方案,我也会接受。我知道,升高祖先与层叠样式表的目的背道而驰,在大多数情况下,这种形式是较差的形式,但是我目前的情况要求这样做。
(31个答案)
5年前关闭。
我有至少有一个可能符合或不符合特定条件的内联块子元素的块父元素。我想给父样式设置样式,以突出显示特定子类型的存在(“特殊”类下方):
<parent>
<child class="normal">Text</child>
</parent>
<parent>
<child class="special">Text</child>
</parent>
通常,这不是问题,因为我只是通过JavaScript在父类上放置了一个等效类。但是,在这种情况下,我正在为Firefox附加组件“时尚”编写样式表,因此我无法访问JavaScript DOM,并且只能使用现有内容。我在网上找到的解决方案包括:
parent < child.special {/*style*/}
parent! > child.special {/*style*/}
parent:has(child.special) {/*style*/}
但是,我可以找到的有关此问题的最新信息是2013年或更早的版本,并且上述所有方法似乎不再是CSS规范的一部分(或至少在Firefox v32.0.x中不起作用) 。
如果任何人都可以对此提供指导(即使只是告诉我它做不到),我将不胜感激。请记住,它只能在Firefox中运行,因此即使它是“ -moz”解决方案,我也会接受。我知道,升高祖先与层叠样式表的目的背道而驰,在大多数情况下,这种形式是较差的形式,但是我目前的情况要求这样做。
最佳答案
standard set中还没有这样的选择器。
现在唯一可以使用的是:
parent:empty { /*style*/ }