CSS - 目标第 3 div 但跳过 Child Divs
CSS - Target 3rd div but skip Child Divs
我正在使用 WordPress 插件,所以我无法在 PHP 端添加 class,因为这个插件每周都会接收和更新,并且会覆盖我的更改。我需要尝试在前端执行此操作。
代码如下:
.mainInfo div:nth-of-type(3) {
background-color: #302b44;
border: 2px solid #FFF;
padding: 14px;
}
<div class="mainInfo">
<div>This is the 1st Div
<div>Lorem ipsum.</div>
<div>Quis, reiciendis.</div>
<div>Repudiandae, inventore!</div>
</div>
<div>This is the 2nd Div
<div>Lorem ipsum.</div>
<div>Voluptates, minima.</div>
<div>Minima, assumenda?</div>
</div>
<div>This is the 3rd Div **The only one I want to select**
<div>Lorem ipsum.</div>
<div>Dolores, ullam!</div>
<div>Sequi, eligendi!</div>
</div>
<div>This is the 4th Div
<div>Lorem ipsum.</div>
<div>Recusandae, commodi.</div>
<div>Reiciendis, nostrum.</div>
</div>
</div>
这是一个 fiddle 显示我正在努力完成的事情,但我相信你已经知道这也计算了主要内容中的 child DIV parent DIV 也。我只想定位 "mainInfo" 内的第 3 个 "main" DIV 有没有办法通过跳过 child DIvs 来实现这个目标?如果这可以通过 jQuery 解决,我也接受。
仅供参考:就像我说的,这是一个 WP 插件,因此第一个和第二个主要 DIV 内部根据用户输入有不同数量的 child DIV。
在两个选择器之间添加 "direct child" 连接:
.mainInfo > div:nth-of-type(3) {
这样它就不会匹配 .mainInfo
的孙子。
只需使用 >
select 或 (CSS selectors reference),这会强制 select 引导孩子。
.mainInfo > div:nth-of-type(3) {
Selects all "div:nth-of-type(3)" elements where the parent is a ".mainInfo" element
.mainInfo > div:nth-of-type(3) {
background-color: #302b44;
border: 2px solid #FFF;
padding: 14px;
}
<div class="mainInfo">
<div>This is the 1st Div
<div>Lorem ipsum.</div>
<div>Quis, reiciendis.</div>
<div>Repudiandae, inventore!</div>
</div>
<div>This is the 2nd Div
<div>Lorem ipsum.</div>
<div>Voluptates, minima.</div>
<div>Minima, assumenda?</div>
</div>
<div>This is the 3rd Div **The only one I want to select**
<div>Lorem ipsum.</div>
<div>Dolores, ullam!</div>
<div>Sequi, eligendi!</div>
</div>
<div>This is the 4th Div
<div>Lorem ipsum.</div>
<div>Recusandae, commodi.</div>
<div>Reiciendis, nostrum.</div>
</div>
</div>
我正在使用 WordPress 插件,所以我无法在 PHP 端添加 class,因为这个插件每周都会接收和更新,并且会覆盖我的更改。我需要尝试在前端执行此操作。
代码如下:
.mainInfo div:nth-of-type(3) {
background-color: #302b44;
border: 2px solid #FFF;
padding: 14px;
}
<div class="mainInfo">
<div>This is the 1st Div
<div>Lorem ipsum.</div>
<div>Quis, reiciendis.</div>
<div>Repudiandae, inventore!</div>
</div>
<div>This is the 2nd Div
<div>Lorem ipsum.</div>
<div>Voluptates, minima.</div>
<div>Minima, assumenda?</div>
</div>
<div>This is the 3rd Div **The only one I want to select**
<div>Lorem ipsum.</div>
<div>Dolores, ullam!</div>
<div>Sequi, eligendi!</div>
</div>
<div>This is the 4th Div
<div>Lorem ipsum.</div>
<div>Recusandae, commodi.</div>
<div>Reiciendis, nostrum.</div>
</div>
</div>
这是一个 fiddle 显示我正在努力完成的事情,但我相信你已经知道这也计算了主要内容中的 child DIV parent DIV 也。我只想定位 "mainInfo" 内的第 3 个 "main" DIV 有没有办法通过跳过 child DIvs 来实现这个目标?如果这可以通过 jQuery 解决,我也接受。
仅供参考:就像我说的,这是一个 WP 插件,因此第一个和第二个主要 DIV 内部根据用户输入有不同数量的 child DIV。
在两个选择器之间添加 "direct child" 连接:
.mainInfo > div:nth-of-type(3) {
这样它就不会匹配 .mainInfo
的孙子。
只需使用 >
select 或 (CSS selectors reference),这会强制 select 引导孩子。
.mainInfo > div:nth-of-type(3) {
Selects all "div:nth-of-type(3)" elements where the parent is a ".mainInfo" element
.mainInfo > div:nth-of-type(3) {
background-color: #302b44;
border: 2px solid #FFF;
padding: 14px;
}
<div class="mainInfo">
<div>This is the 1st Div
<div>Lorem ipsum.</div>
<div>Quis, reiciendis.</div>
<div>Repudiandae, inventore!</div>
</div>
<div>This is the 2nd Div
<div>Lorem ipsum.</div>
<div>Voluptates, minima.</div>
<div>Minima, assumenda?</div>
</div>
<div>This is the 3rd Div **The only one I want to select**
<div>Lorem ipsum.</div>
<div>Dolores, ullam!</div>
<div>Sequi, eligendi!</div>
</div>
<div>This is the 4th Div
<div>Lorem ipsum.</div>
<div>Recusandae, commodi.</div>
<div>Reiciendis, nostrum.</div>
</div>
</div>