https://codepen.io/leongaban/pen/xrdwRw
我想要实现的是这个,flex-box 仍然可以工作,并且不使用 floats with don't work with flex-container
标记
<div>
<div class="dashboard">
<ul class="flex-container">
<li class="flex-item">1</li>
<li class="flex-item">2</li>
<li class="flex-item">3</li>
<li class="flex-item">4</li>
<li class="flex-item">5</li>
<li class="flex-item">6</li>
</ul>
<ul class="flex-container">
<li class="flex-item">1</li>
<li class="flex-item">2</li>
<li class="flex-item">3</li>
<li class="flex-item">4</li>
<li class="flex-item">5</li>
<li class="flex-item">6</li>
</ul>
</div>
<div class="col">
</div>
</div>
CSS
@import "compass/css3";
// .dashboard { float: left; }
.col {
float: right;
width: 300px;
height: 600px;
background: orange;
}
.flex-container {
display: -webkit-box;
display: -moz-box;
display: -ms-flexbox;
display: -webkit-flex;
display: flex;
-webkit-flex-flow: row wrap;
justify-content: space-around;
}
.flex-item {
background: tomato;
padding: 5px;
width: 200px;
height: 150px;
margin-top: 10px;
line-height: 150px;
color: white;
font-weight: bold;
font-size: 3em;
text-align: center;
}
最佳答案
使外部 div 成为 flex 容器(并从 .col
中删除 float
)
CSS
.flex-outer {
display: flex;
}
HTML
<div class="flex-outer">
....
</div>
已更新
根据评论,我更新了我的答案,清理了代码并使用了适当的 flex 属性。
此外,由于没有在 flex 元素规则上设置前缀属性,我将它们从 flex 容器规则中删除,因为如果在两个地方都没有设置它们将不会执行任何操作。
堆栈片段
@import "compass/css3";
.flex-outer {
display: flex;
}
.dashboard {
flex-grow: 1;
}
.col {
margin-left: 25px;
flex-basis: 300px;
background: orange;
}
.flex-container {
display: flex;
justify-content: space-around;
}
.flex-item {
flex: 1 1 200px;
background: tomato;
padding: 5px;
height: 150px;
margin-top: 10px;
color: white;
font-weight: bold;
font-size: 3em;
display: flex;
justify-content: center;
align-items: center;
}
<div class="flex-outer">
<div class="dashboard">
<ul class="flex-container">
<li class="flex-item">1</li>
<li class="flex-item">2</li>
<li class="flex-item">3</li>
<li class="flex-item">4</li>
<li class="flex-item">5</li>
<li class="flex-item">6</li>
</ul>
<ul class="flex-container">
<li class="flex-item">1</li>
<li class="flex-item">2</li>
<li class="flex-item">3</li>
<li class="flex-item">4</li>
<li class="flex-item">5</li>
<li class="flex-item">6</li>
</ul>
</div>
<div class="col">
</div>
</div>
关于css - flex-box 如何在多个 flex-rows 的右侧有一个静态固定列?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44654445/