:last-of-type 伪类选择器用于选中父元素中同类型标签的最后一个元素,常用于去除列表或段落中最后一个元素的边框或间距;例如 .container p:last-of-type { border-bottom: none; } 可移除最后一个 的下边框,即使其后存在其他标签也依然生效;与 :last-child 不同,它不要求目标元素是父元素的最后一个子节点;实际应用中可结合通用样式与 :last-of-type 覆盖规则,实现如列表项分隔线仅在非最后一项显示的效果;该选择器为 CSS3 特性,现代浏览器均支持,但不兼容 IE8 及以下版本,且仅按标签名匹配,不跨类型比较。

在CSS中,:last-of-type 是一个非常实用的伪类选择器,它能选中父元素中同类型标签的最后一个元素。这个特性特别适合用于列表、段落或同类组件的样式优化,比如为最后一个元素取消边框或调整间距。
理解 :last-of-type 的作用
:last-of-type 会匹配其父容器中具有相同标签名的元素中的最后一个。例如,如果有多个 与 :last-child 不同的是,:last-of-type 不要求该元素是父元素的最后一个子元素,只要它是同类型中的最后一个即可。 上面的代码会为最后一个 元素移除下边框,即使后面还有 元素也不会影响匹配结果。 常见场景是在列表项之间添加分隔线,但不希望最后一个元素有下边框。使用 :last-of-type 可以轻松实现这一效果。 这样每个 :last-of-type 是 CSS3 选择器,现代浏览器都支持,但在极老版本(如 IE8 及以下)中不可用。如果需要兼容老浏览器,建议结合类名手动控制。 另外要留意标签类型的判断 —— 它只针对同一标签。例如 和 基本上就这些。合理使用 :last-of-type 能让你的样式更简洁,减少不必要的 HTML 类名,提升维护效率。
CSS 样式:
.container p:last-of-type {
border-bottom: none;
}
结合 :last-of-type 设置边框的最佳实践
.item-list div {
padding: 10px;
border-bottom: 1px solid #ccc;
}
.item-list div:last-of-type {
border-bottom: none;
}
注意事项和兼容性










