首页 文章

Flexbox - 对齐:居中/对齐:中心高度未知

提问于
浏览
1

我试图将页面分成4个相等的正方形和 centered 内容 . 我遇到的问题是由于.flex-item div具有视口高度而使内容居中,我正在寻找一个完整的flexbox解决方案,谢谢 .

我从资源中尝试了以下内容:

证明内容中心

对齐项目中心

.flex-container {
  display: -webkit-flex;
  -webkit-flex-flow: row wrap;
  flex-flow: row wrap;
}

.color_1 {
  background: tomato;
}

.color_2 {
  background: LightGreen;
}

.color_3 {
  background: PowderBlue;
}

.color_4 {
  background: SteelBlue;
}

.flex-item {
  -webkit-flex: 1 0 auto;
  flex: 1 0 auto;
  width: 50%;
  height: 50vh;
}
<div class="flex-container">
  <div class="flex-item color_1"><div class="inner"><p>inner</p></div></div>
  <div class="flex-item color_2"><div class="inner"><p>inner</p></div></div>
  <div class="flex-item color_3"><div class="inner"><p>inner</p></div></div>
  <div class="flex-item color_4"><div class="inner"><p>inner</p></div></div>
</div>

1 回答

  • 3

    使 .flex-item 成为flex容器,并使用justify-contentalign-items来集中其内容:

    .flex-item {
      display: flex;
      justify-content: center;
      align-items: center;
    }
    
    body {
      margin: 0;
    }
    .flex-container {
      display: flex;
      flex-wrap: wrap;
    }
    .color_1 {
      background: tomato;
    }
    .color_2 {
      background: LightGreen;
    }
    .color_3 {
      background: PowderBlue;
    }
    .color_4 {
      background: SteelBlue;
    }
    .flex-item {
      flex: 1 0 auto;
      width: 50%;
      height: 50vh;
      display: flex;
      justify-content: center;
      align-items: center;
    }
    
    <div class="flex-container">
      <div class="flex-item color_1"><div class="inner">inner</div></div>
      <div class="flex-item color_2"><div class="inner">inner</div></div>
      <div class="flex-item color_3"><div class="inner">inner</div></div>
      <div class="flex-item color_4"><div class="inner">inner</div></div>
    </div>
    

相关问题