【发布时间】:2020-04-29 09:33:24
【问题描述】:
我正在制作一个自定义元素,并且一直在寻找一种方法来为与影子 DOM 关联的 :host 伪类添加更多特异性。据我了解,它用于选择实际的自定义元素本身。例如,如果我有一个名为my-elem 的元素附加了一个影子DOM,那么:host 伪类将等效于全局样式表中my-elem 下的一个类。
从这里我想尝试进一步指定选择器,以便我可以根据它们的状态设置自定义元素的样式,例如::host:not(.active)。但是,我真的找不到任何关于:host 的详细信息,并且使用上述内容不起作用。
我也尝试过传统的:host.active,甚至是厚脸皮的:host[active],但它们都不起作用。
所以我想问这是否可能。我已经在网上进行了一些搜索,但似乎并没有太多关于这件事的在线搜索,我觉得这可能是不可能的,所以我可能不得不降低一层并将活动类应用于包装器状态变化时的自定义元素。
我只是想这样做,因为它允许我以编程方式设置其父元素的样式(我将活动/非活动样式应用于自定义元素表单的自定义幻灯片)。
提前谢谢你。
【问题讨论】:
-
你试过:host(.active)吗?
-
@Supersharp 感谢成功的伙伴!
标签: javascript css css-selectors web-component pseudo-class