如何仅使用CSS创建交替列表模式

如何仅使用CSS创建交替列表模式,css,Css,我在991px及以上的屏幕上有一个带有交替颜色图案的项目列表。我使用CSS来针对每个我想改变颜色的子元素 然而,我的CSS看起来不是很优雅,因为项目的数量是未知的,可能有数百个。用我的CSS方法,我必须写出所有的可能性,以确保保留样式 CSS有什么方法可以改进我的方法吗 @media screen and (min-width:991px) { .item { background:darkgrey; } .item:nth-child(2),

我在991px及以上的屏幕上有一个带有交替颜色图案的项目列表。我使用CSS来针对每个我想改变颜色的子元素

然而,我的CSS看起来不是很优雅,因为项目的数量是未知的,可能有数百个。用我的CSS方法,我必须写出所有的可能性,以确保保留样式

CSS有什么方法可以改进我的方法吗

@media screen and (min-width:991px) {

    .item {
        background:darkgrey;
    }

    .item:nth-child(2),
    .item:nth-child(3),
    .item:nth-child(6),
    .item:nth-child(7),
    .item:nth-child(10),
    .item:nth-child(11),
    .item:nth-child(14),
    .item:nth-child(15),
    .item:nth-child(18),
    .item:nth-child(19),
    .item:nth-child(22),
    .item:nth-child(23),
    .item:nth-child(26),
    .item:nth-child(27) ,
    .item:nth-child(30)  {
        background:green;
    }
}
你可以用

你可以用


偶数
2n
与OP代码中提到的
2、3、6、7等不同。@pavel确实已修复。我误读了这个问题。我不知道为什么这被否决了。请参阅@Roel:这是我的否决票,请阅读我上面的评论(以及编辑前的原始答案)。
甚至
2n
与OP代码中提到的
2,3,6,7
等不同。@pavel确实修复了。我误读了这个问题。我不知道为什么这被否决了。请看@Roel:这是我的反对票,请阅读我的评论(以及编辑前的原始答案)。更清楚一点:这看起来像是改变颜色,但实际上是蓝、绿、绿、蓝、蓝、绿、绿等等。。。所以这并不是一个重复的问题,更清楚一点:这看起来像是改变颜色,但实际上是蓝,绿,绿,蓝,蓝,绿,绿等等。。。因此,这并不是上述问题的重复。
.item:nth-child(4n+2),
.item:nth-child(4n+3) { background: green }