CSS 弹性盒子布局

CSS 弹性盒子布局模块定义了一种 CSS 盒子模型,该模型针对用户界面设计和一维项目布局进行了优化。在弹性布局模型中,弹性容器的子元素可以按任何方向布局,并且可以“弹性”地调整其大小,即可以增长以填充未使用的空间,也可以收缩以避免溢出其父元素。子元素的水平和垂直对齐方式都可以轻松控制。

弹性盒子布局实战

在下面的示例中,容器已设置为 display: flex,这意味着三个子项成为弹性项目。justify-content 的值已设置为 space-between,以便在主轴上均匀地间隔项目。每个项目之间放置了相等的空间,左右项目与弹性容器的边缘齐平。您还可以看到项目在交叉轴上拉伸,这是由于 align-items 的默认值为 stretch。项目拉伸到弹性容器的高度,使它们都显示为最高项目的高度。

html
<div class="box">
  <div>One</div>
  <div>Two</div>
  <div>Three <br />has <br />extra <br />text</div>
</div>
css
body {
  font-family: sans-serif;
}

.box {
  border: 2px dotted rgb(96 139 168);
  display: flex;
  justify-content: space-between;
}

.box > * {
  border: 2px solid rgb(96 139 168);
  border-radius: 5px;
  background-color: rgb(96 139 168 / 0.2);
  padding: 1em;
}

参考

属性

术语表

指南

flexbox 的基本概念

弹性盒子的功能概述。

弹性盒子与其他布局方法的关系

弹性盒子与其他布局方法和 CSS 规范的关系。

在弹性容器中对齐项目

盒子对齐属性如何与弹性盒子配合使用。

排序弹性项

解释了改变项目顺序和方向的不同方式,并涵盖了这样做的潜在问题。

沿主轴控制弹性项目的比例

解释 flex-growflex-shrinkflex-basis 属性。

掌握弹性项目的换行

如何创建多行弹性容器并控制这些行中项目的显示。

弹性盒子的典型用例

典型的弹性盒子使用场景中的常见设计模式。

CSS 布局:弹性盒子

学习如何使用弹性盒子布局来创建网页布局。

Flexbox 中的盒模型对齐

CSS 盒子对齐的特定于弹性盒子的详细功能。

CSS display 模块

CSS 盒模型对齐模块

CSS 盒模型尺寸模块

规范

规范
CSS 弹性盒子布局模块第 1 级

另见