我的导航栏上有黑色文字。
在我的某些页面上,导航位于黑暗的全屏英雄图像上。在这些情况下,我希望我的导航文本为白色。
我的HTML看起来像这样:
<nav>
<ul>
<li>My nav items...</li>
</ul>
</nav>
<div class="hero"></div>
基本上我想这样做:
nav {
color: black;
}
// if there is a hero image in the background
nav:has(+ .hero) {
color: white;
}
问题是任何浏览器(:has pseudo-class)不支持caniuse。
有没有一种方法可以在CSS中完成并且无需更改HTML布局? (实际上,它比我的示例要复杂一些)
实验性:has
伪类是否可以破解?