正如标题所说,这个
CSS
.group {
width:100px;
height:100px;
background-color:blue;
}
.group:empty {
background-color:red;
}
.hideme {
display:none;
}
HTML
<div class="group">
<div class="hideme">
hello
</div>
</div>
未能给出红色背景。
是否有:empty
的替代品,如果有任何子项display:none
也会匹配?
答案 0 :(得分:0)
不幸的是,单独使用css无法实现它,但您可以使用jquery selector :visible
代替。
答案 1 :(得分:0)
不,没有。不管怎么说,我不知道。
最好的选择是JavaScript ......因为我自己就是jQuery粉丝,你可以使用它。
$group = $('.group');
if( $group.find('.hideme').is(':visible') ) {
$(this).parent().css({ 'background-color' : 'blue' });
} else {
$(this).parent().css({ 'background-color' : 'red' });
}
这尚未经过测试,但基本逻辑应该非常清楚?
此外,当然不要忘记在HTML文档中包含jQuery库:
<script src="//ajax.googleapis.com/ajax/libs/jquery/1.10.2/jquery.min.js"></script>
答案 2 :(得分:0)
你可以尝试
div.group div.hideme
{
background-color:red;
}
这会设置div.hideme
的样式,而不是div.group
的样式
否则您可以使用Javascript,因为其他答案已显示。