我在删除图片中此div上的边距时遇到了很多问题。我在循环中生成了很多div但是其中一些是空的,尽管边距仍然应用于高度为0的元素。如何使用CSS删除空元素上的边距?
注意:不幸的是,我不知道生成div时哪些磁贴是空的。只有孩子有条件,所以他们可以生成空子,我最终得到一个带边距的空div。
.tile {
float: left;
width: 24%;
display: inline-block;
vertical-align: top;
margin: 10px 0.25%;}
答案 0 :(得分:2)
试试这个:
.tile:empty{
margin:0;
}
.tile, .tile1 {
float: left;
width: 24%;
display: inline-block;
vertical-align: top;
margin: 10px 0.25%;
background-color: red;
}
.tile:empty{
margin:0;
}

<h1>With Empty Selector</h1>
<div class="tile">Not Empty</div>
<div class="tile"></div>
<div class="tile">Not Empty</div>
<br><br>
<h1>Without Empty Selector</h1>
<div class="tile1">Not empty</div>
<div class="tile1"></div>
<div class="tile1">Not Empty</div>
&#13;
答案 1 :(得分:1)
生成时,检查它是否没有值,然后不要生成该div。