flex 布局
简介
FLEXBOX CSS3 中的一种布局模式,它可以帮助开发者更加方便地实现自适应布局和响应式设计。FLEXBOX 基于弹性盒子模型,通过对容器和容器内元素的属性设置来实现灵活的布局。
在 FLEXBOX 中,容器是指设置了 display:flex 或 display:inline-flex 属性的元素,容器内的元素则是指容器的子元素。通过设置容器和容器内元素的属性,可以实现以下功能:
弹性布局:容器内的元素可以根据容器的大小和方向自动调整位置和大小,从而实现弹性布局。
对齐方式:可以通过设置 justify-content 和 align-items 属性来实现容器内元素的水平和垂直对齐。
排列方式:可以通过设置 flex-direction 属性来实现容器内元素的排列方式,包括水平排列和垂直排列。
元素间距:可以通过设置 justify-content 和 align-items 属性来实现容器内元素的间距和间隔。
元素排序:可以通过设置 order 属性来实现容器内元素的排序,从而实现元素的前后顺序调整。
基本概念
- 主轴(main axis)是沿着 flex 元素放置的方向延伸的轴(比如页面上的横向的行、纵向的列)。该轴的开始和结束被称为 main start 和 main end。
- 交叉轴(cross axis)是垂直于 flex 元素放置方向的轴。该轴的开始和结束被称为 cross start 和 cross end。
- 设置了 display: flex 的父元素被称之为 flex 容器(flex container)。
- 在 flex 容器中表现为弹性的盒子的元素被称之为 flex 项(flex item)。
