【发布时间】:2021-07-16 07:21:38
【问题描述】:
我们如何将样式应用于父元素 (P) 的子元素 (C),同时在出现伪类状态时使用后代组合器指定它们的关系?
一个小场景是,当.menu-item 悬停在上面时,父元素.menu-item 的子元素a 需要改变颜色。这在下面给出的代码中表示:
.menu {
list-style-type: none;
}
.menu-item {
padding: 0.5rem;
}
.menu-item a {
text-decoration: none;
color: #222;
}
.menu-item:hover .menu-item a {
color: #a2b;
}
<ul class="menu">
<li class="menu-item">
<a href="#" class="menu-link">Home</a>
</li>
<li class="menu-item">
<a href="#" class="menu-link">About</a>
</li>
<li class="menu-item">
<a href="#" class="menu-link">Contact</a>
</li>
</ul>
但是,当以下代码 sn-p 没有明确指定 a 是 .menu-item 的子代时,它可以工作:
.menu-item:hover a {
color: #a2b;
}
在明确指定元素之间的关系的同时,还有其他方法可以在 CSS 中实现这一点吗?
【问题讨论】:
标签: html css css-selectors