css列表项非首项文字颜色如何设置_使用:not(:first-child)和color控制

使用li:not(:first-child)可设置非首项文字颜色,如color:#888;复杂结构可加类名限定,或用:nth-child(n+2)替代,确保样式精准生效。

要设置CSS列表中非首项的文字颜色,可以使用 :not(:first-child) 伪类选择器配合 color 属性来实现。这种方法简洁高效,适用于无序列表(ul)或有序列表(ol)。

使用 :not(:first-child) 选择非首项

通过组合 :not():first-child,可以精准选中除了第一个列表项之外的所有项。

示例代码:

    
  • 第一项
  • 第二项
  • 第三项

CSS 设置:

    li:not(:first-child) {
      color: #888;
    }
  

这样,只有第一项保持默认颜色,其余项文字变为灰色。

更灵活的选择方式

如果你的列表结构较复杂(比如包含嵌套列表),建议限定作用范围,避免样式污染。

可以给 ul 加类名,然后针对性设置:

    .my-list li:not(:first-child) {
      color: #666;
    }
  

这样只对指定类的列表生效,更安全可控。

替代方案:使用 :nth-child(n+2)

另一种等效写法是使用 :nth-child,从第二个元素开始选中:

    li:nth-child(n+2) {
      color: #777;
    }
  

效果与 :not(:first-child) 相同,可根据习惯选择写法。

基本上就这些。用 li:not(:first-child) 配合 color 是最直观的方式,适合大多数场景。不复杂但容易忽略细节。