:first-child 选中父元素的第一个子元素,:last-child 选中最后一个子元素。两者依据元素在父容器中的顺序位置匹配,常用于列表分隔线、表格样式优化和表单微调。需注意它们不按类型匹配,若首个或末个子元素不符合选择器条件则失效;应使用 :first-of-type 或 :last-of-type 按类型定位。掌握其逻辑可提升 CSS 灵活性与可维护性。

:first-child 和 :last-child 是 CSS 中常用的结构性伪类,用于选中父元素下的第一个或最后一个子元素。它们在样式布局、列表美化、表格设计等场景中非常实用。虽然名称相似,但作用位置和使用细节有明显区别。
示例:
/* 选中列表中的第一项 *// 选中列表中的最后一项 /
li:last-child { color: blue; }
1. 列表项之间的分隔线处理
立即学习“前端免费学习笔记(深入)”;
在水平导航栏或行内列表中,常需要在每项之间加边框,但首项前或末项后不需要。/ 在每一项左边加边框,去掉第一项的边框 /
.nav li { border-left: 1px solid #ccc; }
.nav li:first-child { border-left: none; }
或者反过来,只给最后一项特殊样式(如提示箭头):
.breadcrumb span:last-child { font-weight: bold; }2. 表格样式的优化
对表格的首行或末行设置不同背景色:tr:first-child td { background-color: #f0f0f0; }
tr:last-child td { border-bottom: 2px solid #333; }
3. 表单控件微调
在一组输入框中,取消第一个的上边距或最后一个的下边距:.input-group input:first-child { margin-top: 0; }
.input-group input:last-child { margin-bottom: 0; }
<p> 后面跟着 <div>,则 p:first-child 只有在它是第一个子元素时才生效。:first-of-type 或 :last-of-type。举例:
假设结构为:此时 p:first-child 能匹配第一个 p,因为它确实是第一个子元素。
但如果结构变为:
<div>
<h2>标题</h2>
<p>段落</p>
</div>
那么 p:first-child 将不生效,因为 p 不是第一个子元素。
基本上就这些,掌握它们能让你的 CSS 更加灵活和语义化。
以上就是CSS伪类:first-child与:last-child区别与应用实践的详细内容,更多请关注php中文网其它相关文章!
每个人都需要一台速度更快、更稳定的 PC。随着时间的推移,垃圾文件、旧注册表数据和不必要的后台进程会占用资源并降低性能。幸运的是,许多工具可以让 Windows 保持平稳运行。
Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号