:first-child 选择器用于选中父元素的第一个子元素,常用于列表首项样式控制。例如可为首个 li 添加背景色和加粗字体,或去除第一项的上边框以避免与父容器重叠。其应用还包括导航菜单首项定制及突出显示图文列表首条内容。需注意该伪类仅当目标元素确为第一个子节点时生效,不受类名影响,且 IE9 以上支持良好。掌握它可提升样式精度并减少冗余类名。

在CSS中,:first-child 选择器用于选中父元素中的第一个子元素。这个伪类在控制列表样式时非常实用,比如为列表中的第一项添加特殊样式或去除默认间距。
基本语法与用法
:first-child 可以附加在任何标签或选择器后,表示“仅当该元素是其父容器的第一个子元素时”才应用样式。例如:
li:first-child {background-color: #f0f8ff;
font-weight: bold;
}
这段代码会让 ul 或 ol 列表中第一个 li 项背景变浅蓝且文字加粗。
常见应用场景
在实际开发中,:first-child 常用于以下情况:
立即学习“前端免费学习笔记(深入)”;
- 移除列表第一项的上边距或边框,避免与父容器顶部重叠
- 为导航菜单的第一项设置不同的图标或内边距
- 在图文列表中突出显示首条内容
例如,若每个列表项都有上边框,但希望第一项不显示:
li {border-top: 1px solid #ccc;
}
li:first-child {
border-top: none;
}
注意事项与兼容性
使用 :first-child 时需注意:
- 目标元素必须确实是父元素的第一个子节点,中间不能有其他元素(如文本、注释等)干扰结构
- 它不依赖类名或标签类型,只看位置。例如,即使第一个 li 前有一个 p 标签,它也不会被选中
- 浏览器支持良好,IE9及以上版本均支持,现代项目可放心使用
基本上就这些。掌握 :first-child 能让你更精细地控制列表排版,减少不必要的HTML类名,让样式更简洁。










