一、需求描述

在开发过程中,会碰到一些选择器的需求:
例如使列表中的第一项或者最后一项显示不同的样式 、列表中的奇数或者偶数项显示不同的背景色 . . . 等等。
我们可以通过 CSS 来实现这样的效果,CSS 给我们提供了几个样式参数:first-childlast-childnth-child(n)

二、使用方法的代码示例

1.常见使用方法

first-child first-child:选择列表中的第一个标签。

举例:第一行字体显示为红色,代码如下:

li:first-child{color: red;
}

last-child last-child:选择列表中的最后一个标签。

举例,最后一行字体显示为绿色,代码如下:

li:last-child{color: green;
}

nth-child(n) nth-child(n):选择列表中的第 n 个标签。

举例:第三行字体显示为蓝色,代码如下:

li:nth-child(3){color: blue;
}

nth-child(odd) nth-child(odd):选择列表的奇数行。

举例,奇数行背景显示为灰色,代码如下:

li:nth-child(odd){background: #999;
}

我们可以通过另外的方法选择奇数行,例如: nth-child(n+1) 、 nth-child(2n-1) 等。

代码如下:

/*First*/
li:nth-child(n+1){background: #999;
}
/*Second*/
li:nth-child(2n-1){background: #999;
}

nth-child(even) nth-child(even):选择列表的偶数行。

举例:偶数行背景显示为土黄色(不要在意那些细节),代码如下:

li:nth-child(even){background: #F6E0AF;
}

同样,我们可以通过另外的方法选择奇数行,例如: nth-child(2n) 。

代码如下:

li:nth-child(2n){background: #F6E0AF;
}

上面的几种方法运行效果如下图:

2.更加灵活的使用方法

上面是几种比较常见的选择方法,我们还可以通过 CSS 更灵活的进行选择,有下面几种方法:

nth-child(-n+n) nth-child(-n+n):选择第 n 个之前的元素(此处的 n 是后面的那个,下同)。

举例:前三行背景色设置为绿色,代码如下:

li:nth-child(-n+3){background: #2cae1d;
}

nth-child(n+n) nth-child(n+n):选择第 n 个之后的元素。

举例:第五行及以后背景色设置为蓝色,代码如下:

li:nth-child(n+5){background: #0ab1fc;
}

nth-last-child(n) nth-last-child(n):选择倒数第 n 个元素。

举例:倒数第三元素字体设置为红色,代码如下:

li:nth-last-child(3){color: red;
}

同样可以使用上面的方法进行拓展,方法如下:

nth-last-child(n+n) nth-last-child(n+n):选择倒数第 n 个之前的元素。

举例:倒数第三个及之前的元素字体设置为粗体,代码如下:

li:nth-last-child(n+3){font-weight: bold;
}

上面的几种方法运行效果如下图:

nth-last-child(3n) nth-last-child(3n):选择第 3、6、. . . 个元素,选择三的倍数。

举例:第3、6、 . . . 三的倍数行背景色设置为橙色,代码如下:

li:nth-child(3n){background: orange;
}

nth-last-child(3n+1) nth-last-child(3n+1):选择第 1、4、7 个元素,从第一个开始每个递增三个。

举例:第1、4、7 . . . 行背景色设置为红色,代码如下:

li:nth-child(3n+1){background: red;
}

上面的几种方法运行效果如下图:

三、总结

当然,还有更多的使用方法,我在这只是简单的记录一下我常用的几种,也希望大家能够举一反三,能在项目中更好的利用起来。

nth-child的使用方法相关推荐

  1. nth:child()选择器

    nth:child()属于CSS3中的选择器,针对于有多个相同标签时可以对每个标签的样式进行单独设置,以微信小程序开发中所写的代码为例: 这是wxml中的代码(类似于html): 这是wxss中的代码 ...

  2. css3 nth child 偶数,转载:CSS3 :nth-child(n)方法

    :nth-child(n)    ---->选中某个元素,该元素必须是某个父元素下的第n个子元素: p:nth-child(n)   ---->选中p元素,且该p元素必须是某个父元素下的第 ...

  3. 普通用户 fork报错 fork: retry: No child processes 解决方法

    1.问题 在普通用户下,突然bash失灵,无论执行什么命令,都报如下问题: -bash: fork: retry: No child processes 一般linux 服务器默认的句柄数都是 102 ...

  4. 对于一个html元素,有几种方法修改样式方法的优先级,HTMLCSS常见面试题及疑难解答...

    HTML&CSS常见面试题及疑难解答 HTML篇 对web标准以及W3C的理解与认识? WEB标准不是某一个标准,而是一系列标准的集合.网页主要由三部分组成:结构(Structure).表现( ...

  5. 原生js清空上一个元素内容_原生JS实现动态添加新元素、删除元素方法

    1. 添加新元素 动态添加新元素 Coffee Tea Coffee Tea var child = document.getElementsByClassName("child" ...

  6. docker 无法正常启动 解决方法

    一.Docker启动异常表现: 1.状态反复restaring,用命令查看 $docker ps -a CONTAINER ID IMAGE COMMAND CREATED STATUS PORTS ...

  7. Jquery学习笔记:利用find和children方法获取后代元素

    在很多场景下,需要根据一个已知的jquery对象,去查找其满足条件的后代节点. 这时可以利用 find函数和children来处理. find和children函数都可有一个参数,常见的是一个字符串, ...

  8. python的super方法_Python中“super”是做什么的?

    有什么不同?SomeBaseClass.__init__(self) 意味着调用SomeBaseClass的__init__.而 super(Child, self).__init__() 意味着__ ...

  9. python访问序列元素的编号用什么括起来_python-重新编号数组中元素的有效方法...

    我是python的新手,正在尝试实现一种遗传算法,但需要其中一项操作的代码方面的帮助. 我是这样提出问题的: >每个人我都由一串M个整数表示 > I中的每个元素e取值从0到N > 0 ...

  10. Java Thread类最终同步的void join(long time_in_ms)方法,带有示例

    线程类最终同步无效连接(long time_in_ms) (Thread Class final synchronized void join(long time_in_ms)) This metho ...

最新文章

  1. JWT【JSON Web Token】 简述
  2. python实例讲解wxpythonhyh123_Python实例讲解 -- wxpython 基本的控件 (按钮)
  3. Python中关于文件路径的简单操作 [转]
  4. Sharding-JDBC水平分表(分片策略)_Sharding-Sphere,Sharding-JDBC分布式_分库分表工作笔记008
  5. 建议1 区分4中零值
  6. Java读写excel文件代码
  7. Photoshop插件-创建亮调通道蒙板-脚本开发-PS插件
  8. 2022电工(初级)考试模拟100题及模拟考试
  9. AWS Academy 学生报名考证
  10. 2014春晚小品《扶不扶》台词集锦
  11. GNN algorithms(3): Tri-party Deep Network Representation
  12. 免费的文字转语音的软件有哪些
  13. java与前端实现7种二维码
  14. OTA 简介和常见源码目录-1
  15. 6s手机为什么不显示4g网络连接服务器,苹果iPhone6S 设置4G网络的方法
  16. Linux系统 gcc工作流程和gcc编译参数
  17. 全套学习!系统学Android从零开始,详细的Android学习指南
  18. python语言语块句的标记_个人学习记录
  19. Linux运维之解决服务器挖矿木马问题
  20. 2010-2022管理类联考英语(二)小作文主题汇总|看似很容易猜题…

热门文章

  1. 西游记中如来佛祖来降服孙悟空时为什么说可惜他的真面目
  2. 人民币大写在线转换工具
  3. vue整合百度地图(关键字检索)
  4. 2021年四川高考成绩及录取结果查询,2021年四川高考录取状态查询系统,录取结果什么时候出来公布...
  5. 测试技术提升建议(测试必看)
  6. JavaScript之DOM(中)
  7. 什么是readout function/readout函数
  8. 预约挂号医院管理项目----Service-cmn模块—数据字典
  9. bootice工具修复linux,使用bootice工具修复引导问题教程
  10. dnf锁定计算机,DNF老电脑福音 教你如何提升游戏流畅度