- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
我正在寻找一种方法,将 :nth-child 方法应用于分布在不同父级/容器中的元素(但似乎每个容器都从 0 开始倒数):
<div class="downloads">
<div class="views-field views-field-view">
<span class="field-content">
<div class="view">
<div class="view-content">
<div class="col col-xs-3">text</div> <!-- 1 -->
<div class="col col-xs-3">text</div> <!-- 2 -->
<div class="col col-xs-3">text</div> <!-- 3 -->
</div>
</div>
</span>
</div>
<div class="views-field views-field-view-1">
<span class="field-content">
<div class="view">
<div class="view-content">
<div class="col col-xs-3">text</div> <!-- 4: should have a background-color (but nth:-approach counts this back as 1) -->
<div class="col col-xs-3">text</div> <!-- 5 -->
<div class="col col-xs-3">text</div> <!-- 6 -->
<div class="col col-xs-3">text</div> <!-- 7 -->
<div class="col col-xs-3">text</div> <!-- 8: should have a background-color -->
<div class="col col-xs-3">text</div> <!-- 9 -->
</div>
</div>
</span>
</div>
</div>
我fiddled有点绕,奇怪的是:它适用于 :nth-child(3n+3)
,但我需要每个 第四 元素都受到影响,这就是它出错了。当我使用 :nth-child(4n+4)
时,它只会将其应用于显示的九个元素中的一个:
.downloads .col:nth-child(4n+4) {
background: yellow;
}
有人可以帮我解决这个问题吗? http://jsfiddle.net/6dkos5fy/1/
jQuery approach对我有用。谢谢亚历克斯!
var i = 1;
$(".downloads .col").each(function() {
if (i % 4 === 0) {
$(this).addClass("active");
}
i++;
});
.active {
background: yellow;
}
最佳答案
你的 html 结构很难。我使用 .views-field-view-1
元素创建以下内容来分隔容器。 :nth-child
没有按照您的方式工作:
The :nth-child(an+b) CSS pseudo-class matches an element that has an+b-1 siblings before it in the document tree, for a given positive or zero value for n, and has a parent element. More simply stated, the selector matches a number of child elements whose numeric position in the series of children matches the pattern an+b.
.downloads .views-field-view-1 .col:nth-child(4n+1) {
background: yellow;
}
<div class="downloads">
<div class="views-field views-field-view">
<span class="field-content">
<div class="view">
<div class="view-content">
<div class="col col-xs-3">text</div> <!-- 1 -->
<div class="col col-xs-3">text</div> <!-- 2 -->
<div class="col col-xs-3">text</div> <!-- 3 -->
</div>
</div>
</span>
</div>
<div class="views-field views-field-view-1">
<span class="field-content">
<div class="view">
<div class="view-content">
<div class="col col-xs-3">text</div> <!-- 4: should have a background-color (but nth:-approach counts this as 1) -->
<div class="col col-xs-3">text</div> <!-- 5 -->
<div class="col col-xs-3">text</div> <!-- 6 -->
<div class="col col-xs-3">text</div> <!-- 7 -->
<div class="col col-xs-3">text</div> <!-- 8: should have a background-color -->
<div class="col col-xs-3">text</div> <!-- 9 -->
</div>
</div>
</span>
</div>
</div>
为了更好地理解,请检查以下代码片段:
.downloads .views-field-view-1 .col:nth-child(4n+1) {
background: yellow;
}
.downloads .col {
counter-increment: box;
}
.downloads .col:after {
content: counter(box);
}
<div class="downloads">
<div class="views-field views-field-view"> <span class="field-content">
<div class="view">
<div class="view-content">
<div class="col col-xs-3">text</div> <!-- 1 -->
<div class="col col-xs-3">text</div> <!-- 2 -->
<div class="col col-xs-3">text</div> <!-- 3 -->
</div>
</div>
</span>
</div>
<div class="views-field views-field-view-1"> <span class="field-content">
<div class="view">
<div class="view-content">
<div class="col col-xs-3">text</div> <!-- 4: should have a background-color (but nth:-approach counts this as 1) -->
<div class="col col-xs-3">text</div> <!-- 5 -->
<div class="col col-xs-3">text</div> <!-- 6 -->
<div class="col col-xs-3">text</div> <!-- 7 -->
<div class="col col-xs-3">text</div> <!-- 8: should have a background-color -->
<div class="col col-xs-3">text</div> <!-- 9 -->
</div>
</div>
</span>
</div>
</div>
使用 jquery 发表评论后,您可以尝试:
var i = 1;
$(".downloads .col").each(function() {
if (i % 4 === 0) {
$(this).addClass("active");
}
i++;
});
.active {
background: yellow;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="downloads">
<div class="views-field views-field-view"> <span class="field-content">
<div class="view">
<div class="view-content">
<div class="col col-xs-3">text</div> <!-- 1 -->
<div class="col col-xs-3">text</div> <!-- 2 -->
<div class="col col-xs-3">text</div> <!-- 3 -->
</div>
</div>
</span>
</div>
<div class="views-field views-field-view-1"> <span class="field-content">
<div class="view">
<div class="view-content">
<div class="col col-xs-3">text</div> <!-- 4: should have a background-color (but nth:-approach counts this as 1) -->
<div class="col col-xs-3">text</div> <!-- 5 -->
<div class="col col-xs-3">text</div> <!-- 6 -->
<div class="col col-xs-3">text</div> <!-- 7 -->
<div class="col col-xs-3">text</div> <!-- 8: should have a background-color -->
<div class="col col-xs-3">text</div> <!-- 9 -->
</div>
</div>
</span>
</div>
</div>
引用文献
关于jquery - 正在申请:nth-child to elements regardless of their different parents,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/32739075/
:nth-child(2) 似乎选择了 child 1 内部的东西。 child 1 和 child 3 工作正常。 好像不涉及tag的类型,几个类似但不同的问题都有。我没有看到问题。 https:/
我想用 javascript 隐藏一个特定的 child : #table-detail > tbody > tr:nth-child(10) 基于另一个特定的前一个 child 的内容: #tabl
在我自学 CSS 的过程中,我遇到了伪选择器 :nth-child() (以及它相关的选择器 :nth-last-child() 和 :nth-of-type())。 我已经对它进行了足够的研究,以了
在自学 CSS 的过程中,我遇到了伪选择器 :nth-child() (以及它的相关选择器 :nth-last-child() 和 :nth-of-type())。 我已经对它进行了足够的研究以理解语
我对 nth-of-type 有点困惑伪类,以及它应该如何工作——尤其是与 nth-child 相比类。 也许我的想法是错误的,但是考虑到这个结构 A B 1 2
我对 nth-of-type 有点困惑伪类,以及它应该如何工作——尤其是与 nth-child 相比类。 也许我的想法是错误的,但是考虑到这个结构 A B 1 2
我对 nth-of-type 有点困惑伪类,以及它应该如何工作——尤其是与 nth-child 相比类。 也许我的想法是错误的,但是考虑到这个结构 A B 1 2
我对 nth-of-type 有点困惑伪类,以及它应该如何工作——尤其是与 nth-child 相比类。 也许我的想法是错误的,但是考虑到这个结构 A B 1 2
我对 nth-of-type 有点困惑伪类,以及它应该如何工作——尤其是与 nth-child 相比类。 也许我的想法是错误的,但是考虑到这个结构 A B 1 2
我想避免在自定义 Wordpress 模板中使用函数或循环来为特定元素显示不同的背景颜色。我的问题是需要更改的容器及其父容器。 每个第 1、4、7 等配置文件类都需要有蓝色背景色。每个第 2、5、8
这个问题在这里已经有了答案: What does a space mean in a CSS selector? i.e. What is the difference between .clas
我有 3 个按钮,对于第二个按钮,我试图为其添加额外的边距,但出于某种原因,nth-child 和 nth-of-type 根本没有改变外观。我想我只是不明白它们是如何工作的,所以如果有人可以传播一点
我对 nth-of-type 有点困惑伪类,以及它应该如何工作——尤其是与 nth-child 相比类。 也许我的想法是错误的,但是考虑到这个结构 A B 1 2
我需要在 x 数量的元素之后插入一个 clearfix div,以便我可以获得格式良好的列。 我已经尝试了 :nth-child 和 :nth-of-type 并且我只在前 x 个项目之后添加了一个
遇到一个我想不通的问题。我正在尝试做的一个简单示例: 在类 .row 下第一个“跨度”的每次出现都以红色突出显示,除了第一次出现,它应该以黄色突出显示。 .row span:nth-of-type(1
什么 CSS 选择器可用于选择父元素中的所有奇数元素,但不一定是兄弟元素? A A A
我正在尝试更改 div 内的奇数 div 的样式。出于某种原因,当 nth-of-type(odd) 在另一个 div 中时,它会影响我的所有 div。这是我的常规 div 和奇数 div 的代码:
这个问题在这里已经有了答案: Can I combine :nth-child() or :nth-of-type() with an arbitrary selector? (9 个回答) Wh
我正在尝试更改 div 内的奇数 div 的样式。出于某种原因,当 nth-of-type(odd) 在另一个 div 中时,它会影响我的所有 div。这是我的常规 div 和奇数 div 的代码:
我有这个 html 代码: CSS: .productWarp .productLine { background-color
我是一名优秀的程序员,十分优秀!