【发布时间】:2018-01-02 02:05:20
【问题描述】:
我需要展示一份包含多组选项的问卷。当只有两个选项时,它们应显示在两列中,每列宽度为 50%。当有两个以上时,它们应该显示在三列中,每列有 33.3333%。目前,当只有两个列时,我很难将列宽度设置为 50%。
https://codepen.io/sleepydada/pen/Evjgwr
HTML:
<div class="answers">
<div class="answer">first answer</div>
<div class="answer">second answer</div>
</div>
<div class="answers">
<div class="answer">first answer</div>
<div class="answer">second answer</div>
<div class="answer">third answer</div>
<div class="answer">four answer</div>
</div>
SCSS:
* {
box-sizing: border-box;
}
.answers {
border: 2px solid black;
margin-bottom: 20px;
@media (min-width: 480px) {
display: flex;
flex-wrap: wrap;
justify-content: center;
}
&:first-of-type {
background: #ccc;
}
.answer {
width: 100%;
background: crimson;
margin: 20px 0;
border: 1px solid blue;
@media (min-width: 480px) {
flex: 0 0 33.3333%;
}
}
}
【问题讨论】:
-
您是否尝试将您的
.answers .answer规则更改为flex: 1 1;? -
会 flex:1 + min-width 吗? codepen.io/gc-nomade/pen/MvwjzP 不太确定最终行为,第四个呢?