如果您不能更改标记结构,那么没有简单的方法。
是用
flex-column
no way to set the number of divs per column
所以你必须使用最大高度。。。
@media(min-width:768px) {
.mh {
flex-direction: column;
max-height:140px;
}
}
另一种选择
就是使用从上到下而不是从左到右排列的CSS列。
.row.columns {
column-count: 2;
column-gap: .1rem;
display:block;
}
.columns > .col-md-6 {
display: inline-block;
width: 100%;
max-width: 100%;
}
这个
最后选择
是使用flexbox订购特定位置。。。
<div class="row">
<div class="col-md-6 order-1">
<div class="border p-1">1</div>
</div>
<div class="col-md-6 order-3">
<div class="border p-1">2</div>
</div>
<div class="col-md-6 order-5">
<div class="border p-1">3</div>
</div>
<div class="col-md-6 order-7">
<div class="border p-1">4</div>
</div>
<div class="col-md-6 order-2">
<div class="border p-1">5</div>
</div>
<div class="col-md-6 order-5">
<div class="border p-1">6</div>
</div>
<div class="col-md-6 order-4">
<div class="border p-1">7</div>
</div>
<div class="col-md-6 order-8">
<div class="border p-1">8</div>
</div>
</div>
演示:
https://www.codeply.com/go/IczuqP9l7K