You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何用CSS修改HTML嵌套列表的悬停颜色(不可编辑HTML)

嵌套列表差异化悬停样式实现方案

核心思路

借助CSS子选择器、:not()伪类与:last-child伪类精准定位元素,无需修改HTML结构即可实现需求。

完整CSS代码

/* 除最后一个顶级<li>外,其余顶级<li>及其内部所有元素悬停变蓝色 */
ul > li:not(:last-child):hover,
ul > li:not(:last-child) *:hover {
  color: blue;
}

/* 最后一个顶级<li>及其内部所有元素悬停变橙色 */
ul > li:last-child:hover,
ul > li:last-child *:hover {
  color: orange;
}

代码说明

  • ul > li:仅选中顶级<li>元素,避免误匹配嵌套列表的父级<li>
  • :not(:last-child):排除最后一个顶级<li>
  • *:匹配目标<li>内部所有嵌套元素(含子列表的<li>、<a>等)
  • :hover:在元素悬停时触发样式

若需仅针对嵌套列表的<li>元素(而非所有内部元素)调整样式,可将*替换为ul li:

ul > li:not(:last-child):hover,
ul > li:not(:last-child) ul li:hover {
  color: blue;
}

ul > li:last-child:hover,
ul > li:last-child ul li:hover {
  color: orange;
}

内容的提问来源于stack exchange,提问作者edumarrom

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.08.26 09:15:34