CSS中是否可以使用备用嵌套样式?

dav*_*tar 12 css

我正在做一个小实验,试图替换嵌套div的背景颜色.

这是我打算实现的(没有内联样式):

<div style="background: #fff;">
    <div style="background: #000;">
        <div style="background: #fff;">
            <div style="background: #000;">
                and so on...
            </div>
        </div>
    </div>
</div>
Run Code Online (Sandbox Code Playgroud)

我觉得我一定错过了一些明显的东西!我试过div:nth-of-type(2n)但这似乎只适用于一个级别.

这是用于生成div的实验,因此解决方案需要无穷无尽(不是div div div div = white的行).我知道使用JavaScript非常容易,只需要寻找纯CSS解决方案.

Pir*_*iko 6

正如李斯特先生指出的那样,nth-of-type在一个级别(所选div的父级)上工作.

据我所知,在查看W3C CSS3选择器之后,似乎没有任何用于遍历嵌套的css选择器(除了>选择器,它只查看父项的直接子项).

我希望被证明是错误的,因为这可能非常有用.

所以唯一的(css)解决方案就是你已经说过的解决方案:div > div > div {background: white; } 难道你不能随着div的产生而生成这个解决方案吗?