【发布时间】:2020-03-19 19:29:21
【问题描述】:
我正在尝试获得类似这张图片的结果(模拟):
这是我迄今为止尝试过的,但它显然不能正常工作。
.flex-container {
width: 50%;
border: 2px dashed blue;
margin-bottom: 40px;
}
.flex-container > .wrapper {
display: flex;
flex-wrap: wrap;
margin: -5px;
}
.flex-container > .wrapper > input {
flex-basis: 45%;
flex-shrink: 1;
flex-grow: 1;
margin: 5px;
}
.wrapper.alt1 > input {
flex-basis: 50%;
flex-grow: 0;
}
.wrapper.alt2 > input {
flex-basis: 45%;
flex-grow: 0;
}
<div class="flex-container">
<div class="wrapper">
<input type="button" value="Example">
<input type="button" value="Example">
<input type="button" value="Example">
<input type="button" value="Example">
<input type="button" value="Example">
</div>
</div>
<div class="flex-container">
<div class="wrapper alt1">
<input type="button" value="Example">
<input type="button" value="Example">
<input type="button" value="Example">
<input type="button" value="Example">
<input type="button" value="Example">
</div>
</div>
<div class="flex-container">
<div class="wrapper alt2">
<input type="button" value="Example">
<input type="button" value="Example">
<input type="button" value="Example">
<input type="button" value="Example">
<input type="button" value="Example">
</div>
</div>
我得到了一个动态的按钮列表,我更愿意将宽度设置为特定的 %,而不是为了让 flexbox 工作而将其向下舍入到不太具体的值。或者,如果有另一种方法可以将列数设置为特定的数字,那也可以。
编辑:我正在编辑以指定按钮的数量是动态的,因此它可能是奇数或偶数。对于左对齐的示例,这无关紧要,但对于居中的最终项目示例,这可能会出现问题。
【问题讨论】: