# flex 布局概述
## 1. flex 是什么
- flex 是 Flexible Box 的缩写,意为**弹性布局**
- flex 2009 年就已出现,浏览器兼容性很好,请放心使用
---
## 2. flex 解决了什么问题
- 块元素的垂直居中, flex 可以轻松解决
- 元素大小在容器中的自动伸缩,以适应容器的变化,特别适合移动端布局
---
## 3. flex 项目的布局方向是什么
- 一个物体在一个平面中, 要么水平排列, 要么垂直排列, flex 借鉴了这个思想
- flex 是一维布局, 项目任何时候只能沿一个方向排列,要么水平, 要么垂直
- flex 项目排列的方向, 称为**主轴**, 水平和垂直二种
- 与主轴垂直的称为**交叉轴**(有的教程也称之为*副轴/侧轴*)
---
## 4. flex 布局中常用术语有哪些
| 序号 | 简记 | 术语 |
| ---- | ------ | --------------------------------------- |
| 1 | 二成员 | 容器和项目(`container / item`) |
| 2 | 二根轴 | 主轴与交叉轴(`main-axis / cross-axis`) |
| 3 | 二根线 | 起始线与结束线(`flex-start / flex-end`) |
![](https://img.kancloud.cn/db/62/db6260117862c3348cb6b9b06486e8c1_1278x546.jpg)
---
## 5.flex 容器属性有哪些
| 序号 | 属性 | 描述 |
| ---- | ----------------- | ------------------------------------------------------------- |
| 1 | `flex-direction` | 设置容器中的主轴方向: 行/水平方向, 列/垂直方向 |
| 2 | `flex-wrap` | 是否允许创建多行容器,即 flex 项目一行排列不下时, 是否允许换行 |
| 3 | `flex-flow` | 简化 `flex-direction, flex-wrap` 属性 |
| 4 | `justify-content` | 设置 flex 项目在主轴上对齐方式 |
| 5 | `align-items` | 设置 flex 项目在交叉轴上对齐方式 |
| 6 | `align-content` | 多行容器中,项目在交叉轴上的对齐方式 |
---
## 6. flex 项目属性有哪些
| 序号 | 属性 | 描述 |
| ---- | ------------- | ------------------------------------------------------------------ |
| 1 | `flex-basis` | 项目宽度: 项目分配主轴剩余空间之前, 项目所占据的主轴空间宽度 |
| 2 | `flex-grow` | 项目的宽度扩展: 将主轴上的剩余空间按比例分配给指定项目 |
| 3 | `flex-shrink` | 项目的宽度收缩: 将项目上多出空间按比例在项目间进行缩减 |
| 4 | `flex` | 是上面三个属性的简化缩写: `flex: flex-grow flex-shrink flex-basis` |
| 5 | `align-self` | 单独自定义某个项目在交叉轴上的对齐方式 |
| 6 | `order` | 自定义项目在主轴上的排列顺序,默认为 0,书写顺序,值越小位置越靠前 |
- 教学大纲
- HTML5基础
- 1-html基础知识
- 2-语义化结构元素
- 3-语义化文本元素
- 4-链接/列表/图像元素
- 5-表格元素
- 6-表单与控件元素[重点]
- CSS3基础
- 1-css与html文档
- 2-css选择器
- 3-细说盒模型
- Flex布局[精简版]
- 1-Flex概论
- 2-Flex布局是什么
- 3-Flex基本概念
- 4-Flex容器属性
- 5-Flex项目属性
- Flex布局[细说版]
- 1-flex 布局概述
- 2-flex 容器与项目
- 3-flex 容器主轴方向
- 4-flex 容器主轴项目换行
- 5-flex 容器主轴与项目换行简写
- 6-flex 容器主轴项目对齐
- 7-flex 容器交叉轴项目对齐
- 8-flex 多行容器交叉轴项目对齐
- 9-flex 项目主轴排列顺序
- 10-flex 项目交叉轴单独对齐
- 11-flex 项目放大因子
- 12-flex 项目收缩因子
- 13-flex 项目计算尺寸
- 14-flex 项目缩放的简写
- Flex布局[案例版]
- 1-调整项目顺序
- Grid布局[精简版]
- 1. 常用术语
- 2. 容器属性
- 3. 项目属性
- 4. 布局实例
- 1. 经典三列布局
- 2. 媒体查询
- Grid布局[细说版]
- 1-必知术语
- 2-容器创建与行列划分
- 3-单元格常用单位
- 4-项目填充到单元格
- 5-项目填充到网格区域
- 6-对齐容器中的所有项目
- 7-对齐单元格中所有项目
- 8-对齐单元格中某个项目
- 9-容器中行与列之间的间距