如果右div不包含图像,我需要更改左div的css属性。
<div class="wrapper">
<div class="pg-left-bar"></div>
<div class="pg-right-bar">
<img src="img.jpg">
</div>
</div>
如果右侧div没有图像,则左侧div宽度应更改为100%并从左侧div中删除边距,并将右侧div的显示属性更改为none
我知道如果我在同一个div中寻找元素时如何使用jquery更改css属性
$('.pg-right-bar').has('img').css({ 'background-color': '#fff' });
但我不知道如何为上述情况做到这一点。
感谢任何帮助
更新
Jquery Code来实现这个
if ( $('.pg-right-bar').has('img').length > 0 )
{
$('.pg-left-bar').css({ 'background-color': '#ccc' });
}
else
{
$('.pg-left-bar').css({ 'margin-right': '0px' });
$('.pg-left-bar').css({ 'width': '100%' });
$('.pg-right-bar').css({ 'display': 'none' });
}
答案 0 :(得分:1)
<强>示例强>
http://jsfiddle.net/paycb/2/
<强> JS 强>
if ( $('.pg-right-bar').has('img').length > 0 )
$('.pg-left-bar').css({ 'background-color': '#fff' });
jQuery选择器限制所选元素的数量。如果没有has()
- 标记可用,则使用0
将对象计数限制为img
。
据我所知,这个场景无法用纯CSS解决。我在JS中给你一个例子。