Tailwind CSS on GitHub

Flex Shrink

控制 flex 项目缩小的功能类

Default class reference

Class
Properties
flex-shrink-0flex-shrink: 0;
flex-shrinkflex-shrink: 1;

Shrink

Use flex-shrink to allow a flex item to shrink if needed: 使用 flex-shrink 允许一个 flex 项目在必要的时候缩小:

<div class="flex ...">
  <div class="flex-grow w-16 h-16 ...">
    <!-- This item will grow or shrink as needed -->
  </div>
  <div class="flex-shrink w-64 h-16 ...">
    <!-- This item will shrink -->
  </div>
  <div class="flex-grow w-16 h-16 ...">
    <!-- This item will grow or shrink as needed -->
  </div>
</div>

Don't shrink

使用 flex-shrink-0 阻止一个 flex 项目缩小:

<div class="flex ...">
  <div class="flex-1 h-16 ...">
    <!-- This item will grow or shrink as needed -->
  </div>
  <div class="flex-shrink-0 h-16 w-32 ...">
    <!-- This item will not shrink below its initial size-->
  </div>
  <div class="flex-1 h-16 ...">
    <!-- This item will grow or shrink as needed -->
  </div>
</div>

响应式

要控制 flex 项目在特定断点处的缩小方式,请在任何现有的功能类前添加 {screen}: 前缀。例如,使用 md:flex-shrink-0 仅在中等及以上尺寸屏幕上应用 flex-shrink-0 功能。

<div class="flex ...">
  <!-- ... -->
  <div class="flex-shrink md:flex-shrink-0 ...">
    Responsive flex item
  </div>
  <!-- ... -->
</div>

关于 Tailwind 的响应式设计功能的更多信息,请查看 响应式设计 文档。

定制

Shrink Values

默认情况下,Tailwind 提供了两个 flex-shrink 实用程序。您可以通过编辑您的 Tailwind 配置中的 theme.flexShrink 部分来改变、添加或删除这些功能类。

  // tailwind.config.js
  module.exports = {
    theme: {
      flexShrink: {
        '0': 0,
-       DEFAULT: 1,
+       DEFAULT: 2,
+       '1': 1,
      }
    }
  }

变体

默认情况下, 针对 flex shrink 功能类,只生成 responsive 变体。

您可以通过修改您的 tailwind.config.js 文件中的 variants 部分中的 flexShrink 属性来控制为 flex shrink 功能生成哪些变体。

例如,这个配置将生成 hover and focus 变体:

  // tailwind.config.js
  module.exports = {
    variants: {
      extend: {
        // ...
+       flexShrink: ['hover', 'focus'],
      }
    }
  }

禁用

如果您不打算在您的项目中使用 flex shrink 功能,您可以通过在配置文件的 corePlugins 部分将 flexShrink 属性设置为 false 来完全禁用它们:

  // tailwind.config.js
  module.exports = {
    corePlugins: {
      // ...
+     flexShrink: false,
    }
  }