Skip to content

flex

flex 属性是一个简写属性,用于设置 Flexbox 项目的弹性行为。

语法

css
flex: flex-grow flex-shrink flex-basis;

属性值

说明示例
auto1 1 autoflex: auto
none0 0 autoflex: none
growgrow 1 autoflex: 1
grow shrinkgrow shrink autoflex: 1 1
grow shrink basisgrow shrink basisflex: 1 1 100px

示例

基础用法

css
/* 项目占据所有可用空间 */
.item {
  flex: 1;
}

/* 项目不伸缩 */
.item {
  flex: none;
}

/* 项目根据内容大小伸缩 */
.item {
  flex: auto;
}

/* 项目占据两倍空间 */
.item {
  flex: 2;
}

高级用法

css
/* 容器 */
.container {
  display: flex;
}

/* 项目 1:占据 2 倍空间 */
.item-1 {
  flex: 2;
}

/* 项目 2:占据 1 倍空间 */
.item-2 {
  flex: 1;
}

/* 项目 3:占据 1 倍空间 */
.item-3 {
  flex: 1;
}

浏览器兼容性

浏览器版本
Chrome29+
Firefox28+
Safari9+
Edge12+
iOS Safari9.2+
Android Browser4.4+
Chrome for Android62+

注意事项

  • flex: 1 等同于 flex: 1 1 0%
  • flex: auto 等同于 flex: 1 1 auto
  • flex: none 等同于 flex: 0 0 auto
  • flex-basisauto 时,项目大小基于内容
  • flex-basis0% 时,项目大小基于比例分配

相关属性

相关资源