:last-child 只匹配父容器中最后一个同类型子元素;若末尾有其他标签(如),则失效;推荐用li:last-of-type或li:nth-last-child(1)更可靠。

直接用 :last-child 就行,但得确认它真能选中你想要的那个“最后一个列表项”——很多时候它失效,不是语法错,而是 dom 结构或元素类型不匹配。
为什么 :last-child 有时不生效
它只匹配父容器中「最后一个子元素」且「类型相同」(即同为
、
或 > 注释后的非
元素),或者父容器里混着别的标签,:last-child 就会落到那个元素上,而不是最后一个
。
- ✅ 正确结构:
- 第一项
- 第二项
- 最后一项
→ li:last-child 能命中
- ❌ 干扰结构:
- 第一项
- 第二项
- 最后一项
说明文字
→ li:last-child 不生效,因为最后一个子元素是