html – 如何垂直居中的flexbox项目的内容

我正在使用justify-content:stretch来集中一个flexBox项目的CONTENTS;看来,使用display:table-cell; vertical-align:middle的旧技巧在这种情况下不行.什么是
.flex-container {
    display:flex;
    align-items:center;
    justify-content:stretch;
}
.flex-item {
    align-self:stretch;
}

<div class="flex-container">
    <div class="flex-item">I want to be vertically centered! But I'm not.</div>
</div>

在你解答之前:似乎对我正在问的问题有很多困惑.我正在设计中心flex项目的CONTENTS.使用合理内容:拉伸,项目的高度将伸展到容器的整个高度,但项目的内容浮动到顶部(至少在Chrome中).

“一张图片胜过千言万语.” (A)是我已经得到的(B)是我想要的

解决方法

可以通过将每个flex项目显示为flex容器,然后通过align-items属性垂直对齐内容来实现,如下所示:
.flex-container {
  display:flex;
  align-items:center;
  height: 200px; /* for demo */
}

.flex-item {
  align-self:stretch;
  display:flex;
  align-items:center;
  background-color: gold; /* for demo */
}
<div class="flex-container">
    <div class="flex-item">
      I want to be vertically centered!
      <s>But I'm not.</s>
  </div>
</div>

作为旁注,如果省略align-items:center;声明.flex-container可以安全地删除align-self:stretch;从flex项目以及.

相关文章

操作步骤 1、进入elasticsearch的plugin,进入ik。进入config。 2、在config下面建立以.dic为后缀的字典...
lengend data数据中若存在&#39;&#39;,则表示换行,用&#39;&#39;切割。
代码实现 option = { backgroundColor: &amp;#39;#080b30&amp;#39;, tooltip: { trigger: &...
问题原因 原因在于直接在js中取的变量并复制给var变量。 于是就变成这样。 解决办法 var data = &#...
前言 最近做了一个调查问卷导出的功能,需求是将维护的题目,答案,导出成word,参考了几种方案之后,选...
对于很多人来说,用字符编码都是熟能生巧,而不清楚为什么是那样的字符编码,所以我在这列了一个表,翻...