【发布时间】:2021-11-19 00:37:12
【问题描述】:
我正在尝试以 Bootstrap 的风格设计基于 Flex 的行系统(因此使用 .col-6 等类来调整大小)。但是,Flexbox 的行为并没有达到应有的水平……(列不齐平) 到目前为止,我已经尝试过 width 和 flex-grow,两者都导致了我不想达到的类似结果。我做错了什么?
示例:https://jsfiddle.net/fjLmk8h5/ (此页面上的代码段显示不正确,因为它没有加载 scss)
.row {
display: flex;
flex-wrap: wrap;
flex-direction: row;
flex-basis: 0;
justify-content: center;
column-gap: .5rem;
&.nogap {
column-gap: 0;
}
}
$base: 12;
.col {
flex-grow: 1;
}
@for $i from 1 through $base {
.col-#{$i} {
width: percentage($i/$base);
}
}
<html>
<head>
<style>
.col,
.col-1,
.col-2,
.col-3,
.col-4,
.col-5,
.col-6,
.col-7,
.col-8,
.col-9,
.col-10,
.col-11,
.col-12 {
background-color: red;
}
</style>
</head>
<body>
<div class="row" style="margin-bottom: .5rem;">
<div class="col">#1</div>
<div class="col">#2</div>
<div class="col">#3</div>
<div class="col">#4</div>
<div class="col">#5</div>
<div class="col">#6</div>
<div class="col">#7</div>
<div class="col">#8</div>
<div class="col">#9</div>
<div class="col">#10</div>
<div class="col">#11</div>
<div class="col">#12</div>
</div>
<div class="row">
<div class="col-6">#1-6</div>
<div class="col">#7</div>
<div class="col-3">#8-10</div>
<div class="col-2">#11-12</div>
</div>
</body>
</html>
【问题讨论】: