html - 选择器查找元素的第一个匹配级别

标签 html css css-selectors

具有以下结构:

<ul>
    <li>
        <div><span class="node">Content1</span></div>
    </li>
    <li>
        <div><span class="node">Content2</span></div>
    </li>
    <!-- but also: -->
    <li>
        <div><span class="node">Content3</span>
            <ul>
                <li>
                    <div><span class="node">Content on 2nd level</span></div>
                </li>
            </ul>
        </div>
    </li>
</ul>

现在我想选择位于层次结构的第一级别的具有CSS类node的所有span元素。如何在不匹配第 2 级最后一个跨度的情况下做到这一点?

编辑: div 标记仅用于演示目的。它们可以更改为跨度,甚至可以嵌套在另一个 div 中。我不想从中得到一个脆弱的 CSS 选择器(网络测试),所以我不想使用直接子选择器。此外,我无法自己更改 HTML 代码。

最佳答案

您可以使用>选择器:

#parent > ul > li  .node

或者,如果您没有家长 ID:

ul > li :not(ul) .node

关于html - 选择器查找元素的第一个匹配级别,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25010079/

相关文章:

css - img 在选择器之后列出?

html - 如何强制网络浏览器不缓存图像

php - 将 href (html) 标签与 PHP 一起使用

html - 将 ul 与 div 内的 float 居中

html - 标题div后面的div位置

php - 在标题中显示页面标题 - Wordpress

jquery - 更改 Google 自定义搜索上的输入背景颜色

html - Chrome 网上应用店 CSS 布局

php - Bootstrap 样式不适用于 codeigniter

jquery - 如何使用JQuery "after"选择器