Warning: file_get_contents(/data/phpspider/zhask/data//catemap/2/jquery/68.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Jquery 是否可以循环:n个子样式的模式?_Jquery_Css_Loops_Css Selectors - Fatal编程技术网

Jquery 是否可以循环:n个子样式的模式?

Jquery 是否可以循环:n个子样式的模式?,jquery,css,loops,css-selectors,Jquery,Css,Loops,Css Selectors,我在css文件中创建了一个网格模式,它使用了23种独特的显示和发布样式,分别是:第n个子项(1),:第n个子项(2)等 其目的是让模式重复到第24个元素的第一个子样式,我已经看过了类似于:第n个子(2n+1):的示例,但是模式的重复性不够,所以我觉得从1到23的循环是最好的 e、 g 我的猜测是需要一点jQuery,但是到目前为止,我搜索/jsfiddles的尝试非常糟糕 希望这很容易理解。CSS解决方案: 对于每一个0你的问题实际上都不是很清楚,至少对我来说是这样 实际的 我认为这是解决问题的

我在css文件中创建了一个网格模式,它使用了23种独特的显示和发布样式,分别是
:第n个子项(1)
:第n个子项(2)

其目的是让模式重复到第24个元素的第一个子样式,我已经看过了类似于
:第n个子(2n+1):
的示例,但是模式的重复性不够,所以我觉得从1到23的循环是最好的

e、 g

我的猜测是需要一点jQuery,但是到目前为止,我搜索/jsfiddles的尝试非常糟糕


希望这很容易理解。

CSS解决方案:


对于每一个0你的问题实际上都不是很清楚,至少对我来说是这样

实际的 我认为这是解决问题的办法:

div:nth-child(24n-23) /* 1 */
{
    background-color: red;
}

div:nth-child(24n-22) /* 2 */
{
    background-color: green;
}

/* --- */

div:nth-child(24n-16) /* 8 */
{
    background-color: cyan;
}
小提琴:

我们在这里要做的是,选择每一个第24个元素,然后在它前面取一些元素

以前的: 我想出了这个:,然后笑着说它和
div
selector一样

如果你想给第一,第二,第三。。。24不同的是,您可以:


基本上,您将
n
添加到子编号中,如果我理解正确,它将在每个
n
中重复:

div:nth-child(n+23){ ... }    
div:nth-child(n+47){ ... }    
div:nth-child(n+71){ ... }
...

但如果您只想在每23个div之后重复相同的样式:

div:nth-child(23n+1){ ... }    
div:nth-child(23n+2){ ... }   
div:nth-child(23n+3){ ... }    
...

第六个元素不是同时具有第n个子元素(2)和第n个子元素(3)的设计吗?。。(等)哦,会的。在示例中,它实际上是这样的,但没有注意到。请看@OneTrickPony的解决方案。和新的一样,只是可读性更强。(第二部分)是的,刚刚检查过。用那个。即使你“循环”。。。你仍然需要在某种数组中精确地确定你想对每个:n个孩子(xn+y)做什么,否则你的需要是没有意义的,听起来像是,就像你开始定义你的24项数组一样。Oterwise:javascript for(i=0;i)你的第二部分解决方案最接近OP(我喜欢它)一个技巧小马-你用第二个解决方案赚了大钱。谢谢你的老帖子,但我想感谢@onetrickpony给我的新概念。我认为“CSS”是“静态的”而且只是用于样式,但根据你的小提琴,你可以动态地使用CSS-非常感谢!-我只需要弄清楚我将如何使用它。。。
div:nth-child(24n-23) /* 1 */
{
    background-color: red;
}

div:nth-child(24n-22) /* 2 */
{
    background-color: green;
}

/* --- */

div:nth-child(24n-16) /* 8 */
{
    background-color: cyan;
}
div:nth-child(1n)
{
    background-color: red;
}

div:nth-child(2n)
{
    background-color: green;
}

/* --- */

div:nth-child(24n)
{
    background-color: cyan;
}
div:nth-child(n+23){ ... }    
div:nth-child(n+47){ ... }    
div:nth-child(n+71){ ... }
...
div:nth-child(23n+1){ ... }    
div:nth-child(23n+2){ ... }   
div:nth-child(23n+3){ ... }    
...