CSS选取第几个标签元素

在前端开发中,可能会碰到这样的需求:想让列表中的第一个部分显示不同的样式 ,想让列表中的偶数部分显示不同的背景颜色,想让列表中的最后一部分样式不一样。这样的需求,我们怎样来实现?其实,如果前面文件是php开发的,可以通过php的循环语句+判断语句+css样式来实现。但是,如果是静态代码,php就无法用了。这时,可以通过CSS来实现,CSS提供了几个非常有用的样式参数:first-child、last-child、nth-child(n)。

:nth-child(n) 选择器匹配属于其父元素的第 N 个子元素,不论元素的类型。

n 可以是数字、关键词或公式。

1、first-child

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

li:first-child {
    background:#fff
}

2、last-child

last-child表示选择列表中的最后一个标签,例如:

li:last-child {
    background:#fff
}

3、nth-child(3)

表示选择列表中的第3个标签,例如:

li:nth-child(3) {
    background:#fff
}

代码中的3也可以改成其它数字,如4、5等。想选择第几个标签,就填写几。

4、nth-child(2n)

这个表示选择列表中的偶数标签,即选择 第2、第4、第6…… 标签,例如:

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

5、nth-child(2n-1)

这个表示选择列表中的奇数标签,即选择 第1、第3、第5、第7……标签,例如:

li:nth-child(2n-1) {
    background:#fff
}

6、nth-child(n+3)

这个表示选择列表中的标签从第3个开始到最后。

7、nth-child(-n+3)

这个表示选择列表中的标签从0到3,即小于3的标签。

8、nth-last-child(3)

这个表示选择列表中的倒数第3个标签。

发表评论