Html 如何选择某个类的第一次出现

Html 如何选择某个类的第一次出现,html,css,Html,Css,你有这样的东西吗 <div class="base"> <div> ... <div class="ok"> <div> ... <div class="ok"></div> ... &l

你有这样的东西吗

<div class="base">
    <div>
        ...
            <div class="ok">
                <div>
                    ...
                        <div class="ok"></div>
                    ...
                </div>
            </div>
       ...
   </div>    
</div>

...
...
...
...
这里我只展示了几个div,但它可以是任何级别的深度(注意…)

所以问题是:在不知道嵌套深度的情况下,如何使用类
ok
为第一个元素设置样式


下面是一个示例,您可以看到我使用类为所有div设置样式
ok

CSS不提供基于文档中开始标记后出现的任何内容选择元素的功能。不是后代,不是后来的兄弟姐妹,也不是后来的祖先兄弟姐妹

为此,您需要使用JavaScript。大致如下:

document.addEventListener("DOMContentLoaded", function(event) {
    document.querySelector(".ok").classList.add("ok-first");
});

CSS不提供基于文档中开始标记后出现的任何内容来选择元素的功能。不是后代,不是后来的兄弟姐妹,也不是后来的祖先兄弟姐妹

为此,您需要使用JavaScript。大致如下:

document.addEventListener("DOMContentLoaded", function(event) {
    document.querySelector(".ok").classList.add("ok-first");
});

没有用于该选项的选择器,但有替代解决方案: 您可以对所有
.ok
应用一些css,然后在所有嵌套
上重置。ok

div{
保证金:5px;
填充物:5px;
边框:1px纯绿色;
背景色:#fff;
}
.好的{
背景颜色:灰色;
}
.好的,好的{
背景色:#fff;
}

...
...
...
...
...

没有用于该选项的选择器,但有覆盖解决方法: 您可以对所有
.ok
应用一些css,然后在所有嵌套
上重置。ok

div{
保证金:5px;
填充物:5px;
边框:1px纯绿色;
背景色:#fff;
}
.好的{
背景颜色:灰色;
}
.好的,好的{
背景色:#fff;
}

...
...
...
...
...

这假设除“第一个”外,属于该类的所有元素都是“第一个”的后代。问题中的例子是这样的,但不清楚是否普遍如此。是的,我们将询问我的具体情况我需要设计第一个
ok
的样式,而不是嵌套更深的样式,这意味着这对我有效:)这假设除“第一个”之外,属于该类的所有元素都将是“第一个”的后代。问题中的例子是这样的,但不清楚是否普遍如此。是的,我们将询问我的具体情况我需要设置第一个
ok
的样式,而不是嵌套得更深的样式,这意味着这对我有效:)你的div都嵌套了吗,还是有一些兄弟姐妹?你的div都嵌套了吗,还是有一些兄弟姐妹?