登录
首页 >  文章 >  前端

nth-last-child选择器使用详解

时间:2026-01-22 18:25:49 262浏览 收藏

哈喽!大家好,很高兴又见面了,我是golang学习网的一名作者,今天由我给大家带来一篇《nth-last-child伪类使用教程》,本文主要会讲到等等知识点,希望大家一起学习进步,也欢迎大家关注、点赞、收藏、转发! 下面就一起来看看吧!

:nth-last-child 伪类选择器用于从父元素最后一个子元素开始反向计数选中特定位置的子元素。1. 使用 li:nth-last-child(2) 可选中倒数第二个 li,如“第3项”被高亮;2. li:nth-last-child(2n+1) 选中从后往前的奇数位元素,倒数第1、3、5等添加红色下边框;3. li:not(:nth-last-child(-n+3)) 将非最后三项设为半透明,突出最新数据;4. li:nth-last-child(n+4) 为倒数第4个及之前的元素设置下边距,实现前部卡片留白、末尾紧凑布局。该选择器适用于动态或响应式列表,在不改动HTML结构时精准控制样式。

css伪类:nth-last-child应用实例

在CSS中,:nth-last-child 是一个非常实用的伪类选择器,它允许你从父元素的最后一个子元素开始反向计数来选择特定位置的子元素。这个选择器特别适合处理动态内容或响应式布局中的样式控制。下面通过几个实际例子帮助你理解它的用法。

1. 选择倒数第二个子元素

如果你想为列表中倒数第二个 li 添加特殊样式,可以这样写:

HTML:


  • 第1项

  • 第2项

  • 第3项

  • 第4项

CSS:

li:nth-last-child(2) {
background-color: yellow;
}

效果是“第3项”会被高亮,因为它是倒数第二个 li 元素。

2. 奇数位置(从后往前)加边框

使用公式 nth-last-child(2n+1) 可以选择从末尾开始的奇数位置元素。

CSS:

li:nth-last-child(2n+1) {
border-bottom: 1px solid red;
}

在这个例子中,倒数第1、3、5……个 li 都会添加红色下边框。注意:如果总数量变化,被选中的元素也会随之改变。

3. 忽略最后三项之外的所有项

常见于只对最近几条数据进行样式处理,比如日志或消息列表。

CSS:

li:not(:nth-last-child(-n+3)) {
opacity: 0.5;
}

这段代码的意思是:不是倒数前3个的 li,都设置半透明。视觉上突出显示最新的三条记录。

4. 为倒数第n个之后的元素统一设置外边距

例如,在卡片布局中,希望倒数第3个之前的卡片底部留出更多空间。

CSS:

li:nth-last-child(n+4) {
margin-bottom: 20px;
}

这表示从倒数第4个开始(包括),前面所有的卡片都有 20px 的下边距,而最后三个则没有,可用于收尾区域紧凑排列。

基本上就这些常见用法。掌握 :nth-last-child 能让你更灵活地控制结构未知或长度可变的列表样式,尤其在不修改HTML的情况下实现精准定位。关键是理解“从后往前”的逻辑,并结合函数表达式灵活使用。

到这里,我们也就讲完了《nth-last-child选择器使用详解》的内容了。个人认为,基础知识的学习和巩固,是为了更好的将其运用到项目中,欢迎关注golang学习网公众号,带你了解更多关于CSS伪类的知识点!

前往漫画官网入口并下载 ➜
相关阅读
更多>
最新阅读
更多>
课程推荐
更多>