flex
介绍
flex 简写属性设置了弹性项目如何增大或缩小以适应其弹性容器中可用的空间,是 flex-grow,flex-shrink 和 flex-basis 的简写属性。
使用示例

语法
可以使用一个,两个或三个值来指定 flex 属性。
-
单值语法:值必须是以下之一:
- 一个无单位数
<number>,它会被当作 [<flex-grow>] 的值。此时简写会扩展为flex: <flex-grow> 1 0。 - 一个有效的长度
<length>值或百分比<percentage>或关键字auto,它会被当作<flex-basis>的值。此时简写会扩展为flex: 1 1 <flex-basis>。
- 一个无单位数
-
双值语法:
- 第一个值必须是一个 [
<flex-grow>] 的有效值。 - 第二个值必须是以下之一:
- 一个无单位数
<number>,它会被当作<flex-shrink>的值。此时简写会扩展为flex: <flex-grow> <flex-shrink> 0。 - 一个有效的长度
<length>值或百分比<percentage>或关键字auto,它会被当作<flex-basis>的值。此时简写会扩展为flex: <flex-grow> 1 <flex-basis>。
- 一个无单位数
- 第一个值必须是一个 [
-
三值语法:值必须按照以下顺序指定:
- 第一个值必须为一个无单位数
<number>,它会被当作 [<flex-grow>] 的值。 - 第二个值必须为一个无单位数
<number>,它会被当作<flex-shrink>的值。 - 第三个值必须为一个有效的长度
<length>值或百分比<percentage>或关键字auto,它会被当作<flex-basis>的值
- 第一个值必须为一个无单位数
取值
-
0 1 auto默认值。元件会根据自身宽高设置尺寸。它会缩短自身以适应
flex容器,但不会伸长并吸收flex容器中的额外自由空间来适应flex容器。 -
auto元件会根据自身的宽度与高度来确定尺寸,但是会伸长并吸收
flex容器中额外的自由空间,也会缩短自身来适应flex容器。这相当于将属性设置为 "flex: 1 1 auto"。 -
none元件会根据自身宽高来设置尺寸。它是完全非弹性的:既不会缩短,也不会伸长来适应
flex容器。相当于将属性设置为 "flex: 0 0 auto"。 -
<flex-grow>定义
flex项的 [flex-grow] 属性。负值无效。省略时默认值为0。 -
<flex-shrink>定义
flex项的flex-shrink属性。负值无效。省略时默认值为1。 -
<flex-basis>定义
flex项的flex-basis属性。若值为0,则必须加上单位,以免被视作伸缩性。省略时默认值 为auto。
形式定义
| 初始值 | as each of the properties of the shorthand:
|
| 适用元素 | flex items |
| 是否支持继承 | 否 |
| 是否支持动画 |
形式语法
兼容性
LCD tables only load in the browser