css - 选择所有 X 类型的元素,但在它们内部再次选择不同类型的元素

标签 css css-selectors

例如,如果有多个 DIV 元素,一个在另一个里面。让我们说 3 个级别。
你会如何只选择第 2 层的 Divs,而不知道它们可能有多深,
无法开设更多类(class)?

// html example of a possible DOM
<div class="level1'>
    <a>
        <div>
            <a>
                <div></div>
            </a>
        </div>
    </a>
    <a>
        <div></div>
    </a>
</div>

选择器概述:
div.level1 > div => (BAD) 不会返回任何内容,因为 Div 在 a

div.level1 > a > div => (BAD) 第二级 div 可能更深,不应该写出确切的 xpath

是否有某种 CSS 选择器组合会返回'找到元素但永远不会在其中找到',那么 div.level1 div 将只返回二级 Div,但不是可能在其中的那些(类似的东西)。我发现这是一件非常强大的事情。

最佳答案

不太可能。
但是你可以做的是在级别 >= 2 (div.level1 div) 上设置所需的属性,并在级别 2 以下的所有 div 上取反它 (div.level1 div div >).

当然,始终可以选择为每个级别使用不同的类(class)。

关于css - 选择所有 X 类型的元素,但在它们内部再次选择不同类型的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/6396273/

相关文章:

javascript - TableRow Material-UI 之间的间距

css - "line-height: normal;"是个坏主意吗?

html - CSS 网格的图像错位问题

css select 改变编号

html - CSS:Id 和类没有按预期工作?

html - CSS 居中菜单,其中一张图片固定在屏幕左侧,一张图片固定在屏幕右侧

css - 更具体的选择器解析速度是否更快?

javascript - 如何迭代包含所提供的属性之一的 HTML DOM 节点?

html - 将 '::after' 选择器与直接同级 '+' 选择器一起使用

CSS 选择器 - 如何在 CSS 中选择 'for'?