弹性布局知识点
一、基础概念
-
开启弹性布局的元素叫弹性容器,容器内直接子元素叫弹性项。
-
弹性布局分为两条轴:主轴、侧轴。
-
默认主轴水平向右,侧轴垂直向下;修改主轴方向会同步改变侧轴。
二、容器属性(写在父元素)
- display
flex:块级弹性容器,独占一行
inline-flex:行内弹性容器,同行显示
- flex-direction 控制主轴方向
水平正向、水平反向、垂直正向、垂直反向
3. flex-wrap 控制子元素是否换行
不换行:空间不足自动压缩子元素宽度
正常换行:空间不够自动换到下一行
反向换行:换行后颠倒上下行顺序
-
flex-flow
direction与wrap两个属性的合并简写 -
justify-content 主轴对齐方式
靠起点对齐、靠终点对齐、居中对齐
两端对齐,中间均分空白
每个元素两侧空隙相等
所有空隙完全均等
- align-items 单行侧轴对齐
默认拉伸填满高度、起点对齐、终点对齐、居中、文字基线对齐
7. align-content 多行侧轴整体分布
仅开启换行后生效,控制多行整体上下分布,取值和justify-content一致
三、弹性项属性(写在子元素)
-
flex-grow 放大比例
剩余空间分配权重,默认0,不自动拓宽;数值越大分得空间越多 -
flex-shrink 缩小比例
空间不足时压缩权重,默认1可缩小;设为0禁止压缩 -
flex-basis 元素基础尺寸
优先级高于宽高,定义元素初始占据空间,默认auto -
flex 三合一简写
常用简写:flex:1 均分剩余空间;flex:none 固定尺寸不缩放 -
align-self
单独修改单个弹性项的侧轴对齐,覆盖父容器align-items设置 -
order
改变弹性项排列顺序,数值越小位置越靠前,支持正负数字
四、高频实用特性
-
快速实现元素水平+垂直居中
-
两栏布局:一侧固定宽度,另一侧自适应填满剩余空间
-
导航栏左右分开布局
-
卡片自动换行响应式排列
-
页面底部永久贴底
-
等分多列布局
浙公网安备 33010602011771号