css选择器nth-last-child(n)的学习理解

上一节我们介绍了:nth-child(n)的使用,这一节我们来介绍一下:nth-last-child(n)
:nth-last-child(n):此选择器和nth-child(n)类似都是选择其父元素的第 n 个子元素,唯一的区别在于它是从父元素的子元素末尾开始往前数,一直到第一个子元素。

css 复制代码
/*1:具体的数字:*/
li:nth-last-child(3){
/*选择父元素的倒数第三个子元素。
     这里的子元素的索引从1开始计算,当表达式的值为0或小于0的时候,不选择任何匹配的元素。*/
    background-color:#c00;
}

/*2: 表达式(5n)*/
li:nth-last-child(5n){
    /*表示n从0开始和前边的数字进行乘法运算,然后倒数进行选中计算结果的第几个子元素,
    例如 :nth-last-child(5n) 会选择父元素的 2*0即第 0 个但是这里的元素的索引是从 1 开始的所以没有匹配项, 
    5*1即倒数第5个、5*2 即倒数第10个、5*3 即倒数第15个...等,也可以理解为前边数字的倍数。*/
}
/*3:表达式(n+a) */
li:nth-last-child(n+5){
    /*这里的a 取值为大于等于 0 的整数。
    比如 n+5:表示倒数第5个及其之前的元素:(0+5)=5、(1+5)=6、(2+5)=7,等等一直到第一个元素。*/
}

/*4:表达式(-n+a) */
li:nth-last-child(-n+5){
    /*这里的a 取值为大于等于 0 的整数。
    比如 -n+5:表示最后5个元素被选中*/
}

/*5: 表达式:(an+b)*/

li:nth-last-child(2n+5){
    /*其中a的取值为:0、负整数数、正整数;
    b取值为:大于等于0的整数;
    2n+5 表示 2*0+5=5(倒数第5个)、 2*1+5=7 (倒数第7个)、 2*2+5=9(倒数第9个)、 2*3+5=11(倒数第11个)、.... 等子元素被选中,这离的选中是从后往前数
    */
}
li:nth-last-child(-2n+5){
    /*
    -2n+5 表示 -2*0+5=5(倒数第5个)、 -2*1+5=3(倒数第3个) 、 -2*2+5=1(倒数第1个)、.... 等子元素被选中,这里计算得到负数不选中任何元素
    */
}

/*6: 表达式:(an-b)*/
li:nth-last-child(4n-5){
    /*其中a的取值为:0、正整数;
    b取值为:大于等于0的整数;
    4n-5 表示 4*0-5=-5、 4*1-5=-1 、 4*2-5=3(倒数第3个)、 4*3-5=7(倒数第7个)、 4*4-5=11(倒数第11个)、.... 等子元素被选中
    */
}

/*7: 关键字 odd、 even*/
li:nth-last-child(odd){
    /*会选择所有奇数位置的子元素,和:nth-last-child(2n+1)效果一样
    1、3、5、7、9、.....
    */
}
li:nth-last-child(even){
    /*会选择所有偶数位置的子元素,和:nth-last-child(2n)效果一样
    2、4、6、8、10、.....
    */
}
相关推荐
腾讯TNTWeb前端团队1 小时前
helux v5 发布了,像pinia一样优雅地管理你的react状态吧
前端·javascript·react.js
范文杰4 小时前
AI 时代如何更高效开发前端组件?21st.dev 给了一种答案
前端·ai编程
拉不动的猪4 小时前
刷刷题50(常见的js数据通信与渲染问题)
前端·javascript·面试
拉不动的猪4 小时前
JS多线程Webworks中的几种实战场景演示
前端·javascript·面试
FreeCultureBoy5 小时前
macOS 命令行 原生挂载 webdav 方法
前端
uhakadotcom6 小时前
Astro 框架:快速构建内容驱动型网站的利器
前端·javascript·面试
uhakadotcom6 小时前
了解Nest.js和Next.js:如何选择合适的框架
前端·javascript·面试
uhakadotcom6 小时前
React与Next.js:基础知识及应用场景
前端·面试·github
uhakadotcom6 小时前
Remix 框架:性能与易用性的完美结合
前端·javascript·面试
uhakadotcom6 小时前
Node.js 包管理器:npm vs pnpm
前端·javascript·面试