【问题标题】:Hide parent div , when no child div inside隐藏父 div ,当里面没有子 div 时
【发布时间】:2016-03-25 17:01:32
【问题描述】:
如果父 div 不包含任何子 div,如何在父 div 上设置不显示(或添加 css 样式)?
子 div 是系统动态附加的,所以我们需要在父级上设置一个 css 类,当里面没有子级时。
任何 jquery 想法?
【问题讨论】:
标签:
jquery
html
css
parent-child
display
【解决方案1】:
您不需要jQuery/ javascript/ angular 或其他任何东西
CSS3's :empty 伪选择器可以帮忙
.displayNoneWhenEmpty:empty{
display:none;
}
<div class="displayNoneWhenEmpty">Not Empty</div>
<div class="displayNoneWhenEmpty"></div>
Inspect运行脚本后,看到style适用于empty div
【解决方案2】:
if($("<parent>").children().length == 0)
$("<parent>").hide();
【解决方案3】:
默认情况下将display: none; 设置为您的父级。当你动态附加孩子时,你设置display: block
【解决方案4】:
我假设以下 html
HTML
<div class="parent">
<div class="child">
</div>
</div>
使用这个 jquery 代码
jQuery
if($('.parent').is(':empty')){
$('.parent').hide();
}