css - 选择器 nth-child 在 CSS 中产生奇怪的结果

标签 css

<分区>

我需要选择我的元素数量是奇数。无论元素类“box-media2”

有人对这个问题有任何想法/建议吗?

.box-media:nth-child(2n+1) {
  color: red;
}

.box-media2 {
  display: none;
}
<div class="box-media">Test</div>
<div class="box-media2"></div>
<div class="box-media">Test</div>
<div class="box-media2"></div>
<div class="box-media">Test</div>
<div class="box-media2"></div>
<div class="box-media">Test</div>
<div class="box-media2"></div>
<div class="box-media">Test</div>
<div class="box-media2"></div>
<div class="box-media">Test</div>
<div class="box-media2"></div>
<div class="box-media">Test</div>
<div class="box-media2"></div>
<div class="box-media">Test</div>
<div class="box-media2"></div>

最佳答案

你应该使用 .box-media:nth-child(4n+1) 来选择奇数个 .box-media child 。

.box-media:nth-child(4n+1) {
  color: red;
}

.box-media2 {
  display: none;
}
<div class="box-media">Test</div>
<div class="box-media2"></div>
<div class="box-media">Test</div>
<div class="box-media2"></div>
<div class="box-media">Test</div>
<div class="box-media2"></div>
<div class="box-media">Test</div>
<div class="box-media2"></div>
<div class="box-media">Test</div>
<div class="box-media2"></div>
<div class="box-media">Test</div>
<div class="box-media2"></div>
<div class="box-media">Test</div>
<div class="box-media2"></div>
<div class="box-media">Test</div>
<div class="box-media2"></div>

那是因为 .box-media:nth-child(2n+1) 搜索奇数子项(包括 .box-media.box-media2 ),并将样式应用于具有 box-media 类的奇数子级,这在您的情况下始终为真。

更多关于 :nth-child 选择器的信息 MDN .

关于css - 选择器 nth-child 在 CSS 中产生奇怪的结果,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43946062/

上一篇:javascript - 具有 onclick 事件的重叠元素

下一篇:css - 在变量容器中获取类的每个偶数子级

相关文章:

html - 如何让 div 随其内容展开?

调整大小窗口底部显示的 JQuery 选项卡内容

javascript - 如何通过单击另一个按钮使按钮可见?

html - 导航栏中的水平对齐

javascript - 如何检查容器 div 是否隐藏了某些东西?

css - 在换行符处换行表格单元格内容

jquery - 如何将 Bootstrap 图标颜色更改为黄色?

html - 展开的 flex 盒元素之间的垂直边界

javascript - Flexslider 适合窗口高度和宽度

html - 将元素放在包含 float 元素的行上的居中元素旁边