我该如何选择<li>
是锚元素的直接父元素吗?
举个例子,我的 CSS 应该是这样的:
li < a.active {
property: value;
}
显然,有多种方法可以使用 JavaScript 实现此目的,但我希望 CSS Level 2 本身存在某种解决方法。
我尝试设置样式的菜单是由 CMS 吐出的,因此我无法将活动元素移动到<li>
元素...(除非我为菜单创建模块设置主题,但我不想这样做)。
截至 2023 年 10 月,无法以适用于所有主要浏览器的方式选择 CSS 中元素的父元素。
选择者级别 4 工作草案指定a :has()伪类 https://www.w3.org/TR/selectors-4/#relational除其他外,它提供了此功能:
li:has(> a.active) { /* styles to apply to the li tag */ }
根据https://caniuse.com/css-has https://caniuse.com/css-has,大多数主流浏览器在 2022 年增加了对该伪类的支持;然而,截至 2023 年 10 月,Firefox 尚未默认启用它。
因此,如果您想要一个支持 Firefox、次要浏览器和/或旧浏览器版本的解决方案,那么现在您必须求助于 JavaScript。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)