如何在flex布局中打破线?

kpt*_*cna 29 html css flexbox

我有我的第一,第二和第三项,然后我想要第四项进入下一行,无论空间有多宽.

.box {
  display: flex;
  flex-flow: row wrap;
  justify-content: space-around;
  align-items: flex-start;
}
.it {
  max-width: 420px;
}
Run Code Online (Sandbox Code Playgroud)
<div class="box">
  <div class="it">1</div>
  <div class="it">2</div>
  <div class="it">3</div>
  <div class="it">4</div>
</div>
Run Code Online (Sandbox Code Playgroud)

Ori*_*iol 38

您可以在正确的位置插入一个宽的伪元素:

.flex-container {
  display: flex;
  flex-wrap: wrap;
}
.flex-container::after {
  content: '';
  width: 100%;
}
.flex-item:last-child { /* or `:nth-child(n + 4)` */
  order: 1;
}
Run Code Online (Sandbox Code Playgroud)
<div class="flex-container">
  <div class="flex-item">1</div>
  <div class="flex-item">2</div>
  <div class="flex-item">3</div>
  <div class="flex-item">4</div>
</div>
Run Code Online (Sandbox Code Playgroud)

  • @kptlronyttcna使用伪元素,你只能在两个不同的地方插入内容(`:: before`和`:: after`),所以不能有两个以上的强制换行符.但是,您可以编辑HTML布局并在正确的位置添加宽虚拟元素,尽可能多. (3认同)