:first-child选中父元素下第一个子元素,:last-child选中最后一个子元素,二者均要求该元素满足选择器条件且位于对应位置,如p:first-child仅当p为首个子元素时生效,p:last-child同理,关键区别在于目标子元素的位置不同。

:first-child 和 :last-child 是 CSS 中的两个结构性伪类选择器,它们用于选中父元素下的第一个或最后一个子元素。虽然名称相似,但作用位置相反。
1. :first-child 选择器
匹配父元素中的第一个子元素,前提是该元素满足选择器条件。 例如:- p:first-child 会选中作为其父容器中第一个子元素的
标签。
- 如果第一个子元素不是 p,则不会被选中。
示例:
结果:第一个 p 文字变红,因为它是父 div 的第一个子元素且是 p 标签。
2. :last-child 选择器
匹配父元素中的最后一个子元素,同样要求该元素符合条件。 例如:- p:last-child 会选中作为其父容器中最后一个子元素的
标签。
- 如果最后一个子元素不是 p,则不会被选中。
示例:
结果:第二个 p 加粗,因为它是父元素的最后一个子元素。第一个段落
最后一个段落
关键区别总结
- :first-child 针对的是“第一个”子元素的位置。
- :last-child 针对的是“最后一个”子元素的位置。
- 两者都依赖于元素在父容器中的实际位置,而不是类型顺序。
- 如果目标元素不在对应位置,即使存在也不会被选中。
基本上就这些。使用时注意结构布局是否符合预期,避免因前后标签干扰导致样式未生效。










