一个简单的html / css问题。请看这个example,我希望第二行中的块填补它们上方的空白。无论如何使用JavaScript?
.block {
float: left;
width: 200px;
height: 200px;
background-color: #ff0000;
margin: 2px 2px 0 0;
}
<div style="width: 606px;">
<div class="block">
</div>
<div class="block">
</div>
<div class="block" style="height: 250px">
</div>
<div class="block">
</div>
<div class="block">
</div>
<div class="block">
</div>
</div>
答案 0 :(得分:2)
答案 1 :(得分:1)
如果您愿意使用CSS3,那么列可以帮助您将块叠加起来。
演示:http://jsfiddle.net/abhitalks/bLUrU/5/
示例CSS :
.container {
-webkit-columns: 3; /* create three columns */
-webkit-column-gap: 2px; /* have 2px gap between the columns */
}
.block {
width: 200px;
height: 200px;
background-color: #ff0000;
margin: 2px 2px;
-webkit-column-break-inside: avoid; /* avoid breaking contents across columns */
}
除-webkit
之外,根据需要添加其他供应商前缀。
当然,通过使用列,您必须重新查看div
的排序。 就像这里:http://jsfiddle.net/abhitalks/bLUrU/6/
答案 2 :(得分:0)
将float:right
添加到第三个块
<div style="width: 606px;">
<div class="block">
</div>
<div class="block">
</div>
<div class="block" style="height: 250px;float:right;">
</div>
<div class="block">
</div>
<div class="block">
</div>
<div class="block">
</div>
</div>