📅  最后修改于: 2023-12-03 15:00:46.999000             🧑  作者: Mango
Flexbox(弹性盒布局)是 CSS3 的模块之一,提供了一种更加灵活的方式来布局元素,特别适用于构建响应式页面。
Flexbox 有两个概念:容器(display: flex;
)和一个或多个子元素。以下是 Flexbox 的基本概念:
display: flex;
声明容器,它是父级元素,包含多个子元素。flex
属性,决定它在容器中的大小。Flexbox 容器内的每个项目都包含几个重要的属性。以下是一些常用的属性:
flex-grow
:控制项目如何放大,取值为正整数。flex-shrink
:控制项目如何缩小,取值为正整数。flex-basis
:定义项目在分配多余空间之前占据的主轴空间(即起始尺寸)。flex
:这是一个简写属性,包含 flex-grow
, flex-shrink
, 和 flex-basis
。order
:定义项目的排列顺序,在容器中数值越小,排列越靠前。Flexbox 提供了两种布局模式:水平布局和垂直布局。以下是关于 Flexbox 布局的简要介绍:
在水平布局中,Flexbox 项目沿着容器的主轴水平排列。如果容器内的项目宽度不能自动调整,则可以使用 flex-wrap
属性设置项目是否允许换行。
.container {
display: flex;
flex-wrap: wrap;
justify-content: center;
}
在垂直布局中,Flexbox 项目沿着容器的侧轴垂直排列。可以使用 flex-direction
属性设置主轴方向为垂直方向。
.container {
display: flex;
flex-direction: column;
}
Flexbox 可以很好地兼容主流浏览器和移动端设备。但是,对于一些老版本浏览器,可能需要使用不同的前缀或者不支持某些属性。
Flexbox 为开发者提供了布局灵活性和响应式设计的能力。使用 Flexbox,可以更加自由地控制元素的排列方式,从而构建出更加适应不同终端的网站或应用。