在我的HTML中,

<div class="container">
</div>
<div class="container">
</div>
<div class="container">
</div>
<div class="container">
</div>
..................
..................

在上面的HTML中,我有container个类.在我的CSS中,我需要向.container:nth-child(3,4,5,6,..and so on)添加一些样式.意味着我需要应用除1和2之外的所有nth-child个.

推荐答案

:nth-child()对类不起作用,它寻找元素本身.您需要用包装器包装.container个div,并使用以下方法:

.wrapper div:nth-child(n+3) {
   /* put your styles here... */
}
<div class="wrapper">
    <div class="container"></div>
    <div class="container"></div>
    <div class="container"></div>
    <div class="container"></div>
</div>

100

Clarifying on :nth-child()

使用.container:nth-child(n+3)可能会也可能不会起作用.因为,:nth-child()伪类表示与 Select 器匹配的nth个子元素(在本例中为.container).

如果.container元素不是parent元素中的nth-child元素,则不会 Select 它.

Spec:

:nth-child(an+b)伪类表示法表示一个元素

请考虑以下示例:

<div class="parent">
    <div>1st</div>
    <div>2nd</div>
    <div>3rd</div>
    <div class="container">4th</div>
    <div class="container">5th</div>
    <div class="container">6th</div>
    <div>7th</div>
    <div class="container">8th</div>
    <div>9th</div>
</div>

在本例中,.container:nth-child(2)不会 Select 第二个div.container元素(它有5th个内容).因为在父代的子树中,该元素不是其父代的2nd个子代.

此外,.container:nth-child(n+3)将 Select 所有div.container个元素,因为n0开始表示父代的子树中的第一个元素,而第一个div.container是其父代的4th child个元素.

n starts from 0

n = 0: (0 + 3) = 3 => 3rd element
n = 1: (1 + 3) = 4 => 4th element
n = 2: (2 + 3) = 5 => 5th element
...

因此div.container:nth-child(n+3)代表所有的3rd4th5th...匹配div.container Select 器的子元素.

100.

Css相关问答推荐

如何让CSS过渡应用时宽度增加,而不是减少?

如何在Elm中更改视图时添加过渡?

更改MAT-FORM-FIELD的CSS,使其在有Angular 的HTML中显示为普通文本框

如何使重复线性渐变适合字体大小?

在Reaction中自定义ANTD日期选取器

导航栏没有使用nextui获取页面的全部宽度

更改行数时更改 CSS 网格列

如何更改导航栏标题中链接的文本 colored颜色 和导航丸中的链接(在shiny 的应用程序中)?

Vue.js 变量中的动态类变量

将 tailwincss 转换为普通 CSS?

Sass @use 排序

SASS 文件 struct :_typography、_layout 等中的相同 Select 器

如何从 表格单元格中创建链接

Bootstrap:在列之间添加边距/填充空间

加载资源失败:服务器响应状态为 404(未找到)

Bootstrap 4:导航内的多级下拉菜单

在 CSS3 中重新启动动画:比删除元素更好的方法吗?

当子元素水平溢出时,为什么忽略父元素的右填充?

Unicode 通过 CSS :before

CSS(webkit):在绝对定位元素上用底部覆盖顶部