html - flex 元素忽略对齐内容属性

标签 html css flexbox

我有以下内容:

main {
  min-height: 100vh;
  display: flex;
  justify-content: center;
  align-content: center;
  }

.content-container {
  padding: .5em;
  margin-bottom: 74px;
  flex-basis: min-content;
  }
<main>
<div class="content-container">
     <div>Exercitationem officiis, quod. Culpa deserunt et nisi perspiciatis quisquam tempora tempore voluptates?
      Assumenda commodi distinctio fugiat illo in ipsam maiores minus nam ratione rem, saepe soluta tempora, vero.
      Quisquam, voluptatum!
    </div>
    <div>Autem cumque debitis deleniti dicta doloremque ea est ex, harum magni natus omnis placeat provident recusandae
      saepe sapiente, ut voluptas voluptate, voluptatibus? Dolore dolores iure necessitatibus non obcaecati saepe sequi!
    </div>  
</div>
</main

我希望无论屏幕大小如何,.content-container始终居中。但问题是 .content-container div 始终获得 100vh 的高度(无论是否没有定义的高度)。我尝试设置 flex-basis 但没有效果。

如果我手动将高度设置为例如100px,内容就会重叠。

我做错了什么?

最佳答案

在单行 Flex 容器 (flex-wrap: nowrap) 中,使用 align-items 进行跨轴对齐。

在多行 Flex 容器 (flex-wrap:wrap) 中,使用 align-content

在这种情况下,因为只有一条伸缩线(占据容器的整个高度),所以在容器上使用 align-items: center ,或 align-self :以元素为中心

align-items 位于 Flex 容器上。它为所有元素设置默认的 align-self

align-self 适用于各个 flex 元素。它会覆盖父级为该特定元素设置的 align-items

这里有更完整的解释:

关于html - flex 元素忽略对齐内容属性,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/42136766/

相关文章:

html - 如何在Html中设置对象并行

html - Div 不适应内容大小

html - 在最后一行调整 flex 元素的大小

html - Flexbox child 的高度不一样

html - 如何在 Safari 的 native 日期选择器中隐藏 "clear"按钮?

jquery - 如何使用 jQuery Isotope 制作流体?

php - 多个 Bootstrap Accordion 同时打开和关闭

css - 特定宽度后对齐偏移

html - 尽管查看了几个类似的问题,但我仍然无法设置输入元素的样式并提交相同的表单

javascript - 单击弹出窗口中的图像更改选择选项