jquery - 第 n 个子元素,为每个 4 的倍数的元素分配样式

标签 jquery css jquery-selectors css-selectors

我有一个基于 4 列网格的布局,我想以类似的方式应用 CSS3 动画;

<div class="block"></div><!-- animation-duration: 1s -->
<div class="block"></div><!-- animation-duration: 2s -->
<div class="block"></div><!-- animation-duration: 3s -->
<div class="block"></div><!-- animation-duration: 4s -->
<div class="block"></div><!-- animation-duration: 1s -->
<div class="block"></div><!-- animation-duration: 2s -->
<div class="block"></div><!-- animation-duration: 3s -->
<div class="block"></div><!-- animation-duration: 4s -->

所以基本上,第一列中的元素的动画持续时间为 1 秒,第二列中的元素的动画持续时间为 2 秒,等等。

我怎样才能用第 nth-child 实现这个目标?

最佳答案

要回答您所写的问题,您需要四种样式,一种用于每个动画持续时间:

.block:nth-child(4n) {
    animation-duration: 1s;
}

.block:nth-child(4n+1) {
    animation-duration: 2s;
}

.block:nth-child(4n+2) {
    animation-duration: 3s;
}

.block:nth-child(4n+3) {
    animation-duration: 4s;
}

:nth-child syntax an + b 允许您使用 a 指示您的循环频率,并使用 b 指示您的初始偏移量。每个持续时间样式都需要自己的 b 偏移量。

但是,如果您想将其推广到 m 种样式(而不是仅仅 4 种),您可能应该通过脚本应用样式,而不是手动编写它们。

关于jquery - 第 n 个子元素,为每个 4 的倍数的元素分配样式,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20745320/

相关文章:

css - 如何将包含的 float 元素增长到其容器的全高?

jQuery .next() 不起作用?

Javascript 数组,为每个增量创建一个嵌套数组

jquery - SPAN 元素在 jQuery 中的 show() 上成为 block 级

HTML 自定义 @font-face 不显示正确的字体

jQuery hasClass() - 检查多个类

javascript - jQuery 获取具有特定类名的 SPAN 值

jquery - jQuery 为何这么快?

javascript - 如何通过 div ID 读取动态文本框值并在另一个 jquery 中使用此 ID?

Jquery 如果 css 值不起作用