<分区>
<分区>
我有以下 HTML 设置,我正在尝试将 class="chosen-with-children"
定位到 CSS2 或 CSS3,仅当 div
还包含class="children"
。知道如何解决这个问题吗?我希望这是可能的。
提前致谢。
1.
<div class="wcapf-layered-nav">
<ul>
<li class="chosen-with-children">
<a class="" href=""></a>
</li>
</ul>
</div>
2.
<div class="wcapf-layered-nav">
<ul>
<li class="chosen-with-children">
<a class="" href=""></a>
<ul class="children">
<li class="chosen">
<a class="" href=""></a>
</li>
</ul>
</li>
</ul>
</div>
最佳答案
使用纯 CSS 是不可能的,因为 explained here .
如果你想使用 jQuery,你可以这样做:
$(".chosen-with-children").each(function() {
if($("ul", this).hasClass("children")) {
$(this).addClass("has-child-class");
}
})
.chosen-with-children.has-child-class > a {
color: red;
font-weight: bold;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div class="wcapf-layered-nav">
<ul>
<li class="chosen-with-children">
<a class="" href="">Link 1</a>
<ul class="children">
<li class="chosen">
<a class="" href="">Link 1a</a>
</li>
</ul>
</li>
<li class="chosen-with-children">
<a class="" href="">Link 2</a>
</li>
</ul>
</div>
关于html - 定位特定元素,如果它包含另一个仅使用 CSS 的元素,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47772968/