是否可以在纯 CSS 中设置第 n 个兄弟的样式?
例如,当悬停在 1-st .child
--- 时,我们可以设置 4-th 或 5-th .child
吗?
<div class="parent">
<div class="child"> 1 </div>
<div class="child"> 2 </div>
<div class="child"> 3 </div>
<div class="child"> 4 </div>
<div class="child"> 5 </div>
</div>
更新 我想我的问题有点不正确。对不起。
我的意思是我可以为我悬停的 .child 的第 n 个兄弟设置样式吗?
即样式 4-th .child
当悬停在 1-st 时 .child
;样式 5-th .child
当悬停在 2-nd 等时。
原文由 Zurab 发布,翻译遵循 CC BY-SA 4.0 许可协议
你当然可以。您将 通用兄弟选择器 (~) 与
:hover
结合使用。更新
不,因为据我所知,没有办法“计算兄弟姐妹”。你可以解决这个问题,比如说你想在悬停时突出显示每个
.child
的第二个兄弟。为了简化这个任务,你可能想要使用像 SASS 这样的预处理器:
这将生成上面的 CSS。