:last-of-type 选择父元素中同类型标签的最后一个子元素,如 p:last-of-type 选中最后一个 p 元素,不受后续其他类型元素影响,常用于去除最后项边框、调整间距等场景。

:last-of-type 是 CSS 中的一个伪类选择器,用于选择父元素中同类型中的最后一个子元素。它不是简单地选择最后一个子元素,而是根据元素的标签类型来判断。
基本语法
selector:last-of-type { 样式声明 }这个选择器会匹配指定类型的元素中,在其父容器内是该类型最后一个出现的元素。
实际用法示例
假设你有如下 HTML 结构:
<div><p>段落 1</p>
<p>段落 2</p>
<span>文本 1</span>
<p>段落 3</p>
<span>文本 2</span>
</div>
如果你想选中最后一个
<p>元素(即“段落 3”),可以这样写:
立即学习“前端免费学习笔记(深入)”;
p:last-of-type {color: red;
}
这里虽然
<p>不是整个
<div>的最后一个子元素,但它是所有
p类型中的最后一个,因此会被选中。
同样,
span:last-of-type会选择“文本 2”,因为它是
span类型的最后一个。
常见使用场景
- 去除列表中最后一个同类元素的边框或分割线
- 调整排版中最后一段的外边距
- 在混合类型内容中精准控制样式
例如,下面这段代码可以去掉同类型按钮中最后一个的右边距:
button:last-of-type {margin-right: 0;
}
注意事项
:last-of-type 是基于元素类型的,不是基于类名或位置。比如:
<div class="item"></div><div class="item active"></div>
这两个都是
div类型,所以
div:last-of-type会选中第二个。
如果你希望按
class区分,CSS 没有直接的
:last-of-class,需要借助其他方式,比如给最后一个添加特定类名,或使用 JS 控制。 基本上就这些。掌握
:last-of-type能帮你更灵活地处理结构复杂的 DOM 样式问题。










