Lzh on GitHub

flex

控制弹性项目如何伸缩的实用工具。

快速参考

样式
flex-<number>flex: <number>;
flex-<fraction>flex: calc(<fraction> * 100%);
flex-autoflex: 1 1 auto;
flex-initialflex: 0 1 auto;
flex-noneflex: none;
flex-(<custom-property>)flex: var(<custom-property>);
flex-[<value>]flex: <value>;
为flex布局子元素属性。

示例

基本示例

使用 flex-<number> 实用工具(如 flex-1)允许弹性项目在需要时伸缩,忽略其初始尺寸:

01
02
03
<div class="flex">
  <div class="w-14 flex-none ...">01</div>
  <div class="w-64 flex-1 ...">02</div>
  <div class="w-32 flex-1 ...">03</div>
</div>

Initial

使用 flex-initial 允许弹性项目缩小但不放大,并考虑其初始尺寸:

01
02
03
<div class="flex">
  <div class="w-14 flex-none ...">01</div>
  <div class="w-64 flex-initial ...">02</div>
  <div class="w-32 flex-initial ...">03</div>
</div>

Auto

使用 flex-auto 允许弹性项目伸缩,并考虑其初始尺寸:

01
02
03
<div class="flex ...">
  <div class="w-14 flex-none ...">01</div>
  <div class="w-64 flex-auto ...">02</div>
  <div class="w-32 flex-auto ...">03</div>
</div>

None

使用 flex-none 阻止弹性项目伸缩:

01
02
03
<div class="flex ...">
  <div class="w-14 flex-none ...">01</div>
  <div class="w-32 flex-none ...">02</div>
  <div class="flex-1 ...">03</div>
</div>

使用自定义值

使用 flex-[<value>] 语法根据完全自定义的值设置 flex 简写属性:

<div class="flex-[3_1_auto] ...">
  <!-- ... -->
</div>

对于 CSS 变量,您还可以使用 flex-(<custom-property>) 语法:

<div class="flex-(--my-flex) ...">
  <!-- ... -->
</div>

这只是 flex-[var(<custom-property>)] 的简写形式,它会自动为您添加 var() 函数。

响应式设计

使用断点变体(例如 md:)作为 flex 实用工具的前缀,以便仅在中等尺寸及以上的屏幕上应用该实用工具:

<div class="flex-none md:flex-1 ...">
  <!-- ... -->
</div>

变体文档 中了解更多关于使用变体的信息。