<分区>
标签 css
<分区>
如果 div 不包含任何 li 后代,我想使用 CSS 隐藏它。
鉴于此:
<div>
I should be visible (red)
<ul>
<li>one</li>
</ul>
</div>
<div>
I should be hidden (blue)
<ul></ul>
</div>
我可以使用什么 CSS 来选择第二个 div 并应用 display:none(或 border:1px solid blue for this demo)?
这是一个 fiddle :https://jsfiddle.net/7yab2z27/
最佳答案
您可能会考虑在这种情况下使用 JS,查看我的代码可能会有所帮助。不要忘记包括
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js"></script>
我在这里找到了你的答案: jQuery to hide a DIV if it has no unordered list items
$(document).ready(function() {
$('#seconddiv').hide();
$('#seconddiv').has('ul').show();
});
#seconddiv {
display: block;
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/1.2.3/jquery.min.js"></script>
<div id="seconddiv">
You cant see me I dont have unordered list lol!
<ul>
<li></li>
</ul>
</div>
关于css - 如何在CSS中选择没有后代li的div?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/36613187/