flex: 1到底是什么

flex: 1到底是什么
最新回答
我咋那么萌捏

2026-10-25 22:37:48

先说结论
flex:1即为flex-grow:1,经常用作自适应布局,将父容器的display:flex,侧边栏大小固定后,将内容区flex:1,内容区则会自动放大占满剩余空间。

flex属性是flex-grow, flex-shrink, flex-basis三个属性的缩写
推荐使用此简写属性,而不是单独写这三个属性。

flex-grow:定义项目的的放大比例;

flex-shrink:定义项目的缩小比例;

flex-basis: 定义在分配多余空间之前,项目占据的主轴空间(main size),浏览器根据此属性计算主轴是否有多余空间,

所以flex属性的默认值为:0 1 auto (不放大会缩小)

flex为一个非负数字n:该数字为flex-grow的值,

flex为两个非负数字n1,n2: 分别为flex-grow和flex-shrink的值,

flex为一个长度或百分比L:视为flex-basis的值,

flex为一个非负数字n和一个长度或百分比L:分别为flex-grow和flex-basis的值,