Flex布局通过设置容器的display: flex,利用主轴与交叉轴控制子元素排列,使用justify-content、align-items等属性实现对齐,flex属性分配空间,轻松完成响应式布局。
Flex布局,全称Flexible Box布局,是CSS3中一种全新的布局模式,用来更高效地在容器内对子元素进行排列、对齐和空间分配。它特别适合响应式设计和动态尺寸的场景,能轻松实现传统浮动或定位难以完成的布局效果。
Flex布局的核心是将一个元素设置为弹性容器(flex container),其直接子元素自动成为弹性项目(flex items)。容器通过一系列属性控制项目的排列方向、对齐方式、伸缩比例等。
与传统的块级或行内布局不同,Flex布局不依赖文档流,能够根据可用空间动态调整项目大小,从而实现“灵活”布局。
要启用Flex布局,只需在父容器上设置display: flex或display: inline-flex。
1. 设置弹性容器给父元素添加以下样式:
.container {
display: flex;
}
此时,所有直接子元素将按行从左到右排列,并尽可能占满主轴空间。
2. 主轴与交叉轴Flex布局有两个轴:
可以通过flex-direction改变主轴方向:

实现三个等宽、垂直居中、间距均匀分布的按钮:
CSS样式:
.box {
display: flex;
justify-content: space-around;
align-items: center;
height: 100px;
}
这样按钮会在容器中水平均匀分布且垂直居中。
基本上就这些。掌握几个核心属性后,大多数布局都能快速实现,不需要再依赖浮动或JavaScript计算位置。关键是理解主轴和交叉轴的关系,以及flex属性如何分配空间。