1. 弹性和网格
  2. Flex 基础

Quick reference

Class
Properties
basis-0flex-basis: 0px;
basis-1flex-basis: 0.25rem; /* 4px */
basis-2flex-basis: 0.5rem; /* 8px */
basis-3flex-basis: 0.75rem; /* 12px */
basis-4flex-basis: 1rem; /* 16px */
basis-5flex-basis: 1.25rem; /* 20px */
basis-6flex-basis: 1.5rem; /* 24px */
basis-7flex-basis: 1.75rem; /* 28px */
basis-8flex-basis: 2rem; /* 32px */
basis-9flex-basis: 2.25rem; /* 36px */
basis-10flex-basis: 2.5rem; /* 40px */
basis-11flex-basis: 2.75rem; /* 44px */
basis-12flex-basis: 3rem; /* 48px */
basis-14flex-basis: 3.5rem; /* 56px */
basis-16flex-basis: 4rem; /* 64px */
basis-20flex-basis: 5rem; /* 80px */
basis-24flex-basis: 6rem; /* 96px */
basis-28flex-basis: 7rem; /* 112px */
basis-32flex-basis: 8rem; /* 128px */
basis-36flex-basis: 9rem; /* 144px */
basis-40flex-basis: 10rem; /* 160px */
basis-44flex-basis: 11rem; /* 176px */
basis-48flex-basis: 12rem; /* 192px */
basis-52flex-basis: 13rem; /* 208px */
basis-56flex-basis: 14rem; /* 224px */
basis-60flex-basis: 15rem; /* 240px */
basis-64flex-basis: 16rem; /* 256px */
basis-72flex-basis: 18rem; /* 288px */
basis-80flex-basis: 20rem; /* 320px */
basis-96flex-basis: 24rem; /* 384px */
basis-autoflex-basis: auto;
basis-pxflex-basis: 1px;
basis-0.5flex-basis: 0.125rem; /* 2px */
basis-1.5flex-basis: 0.375rem; /* 6px */
basis-2.5flex-basis: 0.625rem; /* 10px */
basis-3.5flex-basis: 0.875rem; /* 14px */
basis-1/2flex-basis: 50%;
basis-1/3flex-basis: 33.333333%;
basis-2/3flex-basis: 66.666667%;
basis-1/4flex-basis: 25%;
basis-2/4flex-basis: 50%;
basis-3/4flex-basis: 75%;
basis-1/5flex-basis: 20%;
basis-2/5flex-basis: 40%;
basis-3/5flex-basis: 60%;
basis-4/5flex-basis: 80%;
basis-1/6flex-basis: 16.666667%;
basis-2/6flex-basis: 33.333333%;
basis-3/6flex-basis: 50%;
basis-4/6flex-basis: 66.666667%;
basis-5/6flex-basis: 83.333333%;
basis-1/12flex-basis: 8.333333%;
basis-2/12flex-basis: 16.666667%;
basis-3/12flex-basis: 25%;
basis-4/12flex-basis: 33.333333%;
basis-5/12flex-basis: 41.666667%;
basis-6/12flex-basis: 50%;
basis-7/12flex-basis: 58.333333%;
basis-8/12flex-basis: 66.666667%;
basis-9/12flex-basis: 75%;
basis-10/12flex-basis: 83.333333%;
basis-11/12flex-basis: 91.666667%;
basis-fullflex-basis: 100%;

基础用法

设置flex基础

使用 basis-* 实用程序来设置弹性项目的初始大小。

01
02
03
<div class="flex flex-row">
  <div class="basis-1/4">01</div>
  <div class="basis-1/4">02</div>
  <div class="basis-1/2">03</div>
</div>

有条件申请

悬停、聚焦和其他状态

Tailwind 允许您使用变体修饰符有条件地在不同状态下应用实用程序类。例如,使用 hover:basis-1/2 来仅 在 hover应用 basis-1/2.

<div class="basis-1/3 hover:basis-1/2">
  <!-- ... -->
</div>

详细了解, 请参考 Hover, Focus, & Other States 文档.

断点和媒体查询

您还可以使用变体修饰符来定位媒体查询,例如响应式断点、暗模式、首选减少运动等。例如, 使用 md:basis-1/3 来应用 basis-1/3 程序,适用于中等屏幕尺寸及以上。

<div class="flex flex-row">
  <div class="basis-1/4 md:basis-1/3">01</div>
  <div class="basis-1/4 md:basis-1/3">02</div>
  <div class="basis-1/2 md:basis-1/3">03</div>
</div>

进一步了解,请参考 响应式设计, 暗黑模式 媒体查询.


使用自定义值

定制你的主题

默认的弹性基础比例是 default spacing scale 和一组基于百分比的值的组合。

您可以通过编辑 tailwind.config.js 文件中的 theme.spacingtheme.extend.spacing 来定制间距比例。

tailwind.config.js
module.exports = {
  theme: {
    extend: {
      spacing: {
        '112': '28rem',
        '128': '32rem',
      }
    }
  }
}

或者,您可以通过编辑 tailwind.config.js 文件中的 theme.flexBasistheme.extend.flexBasis 来仅自定义弹性基础比例。

tailwind.config.js
module.exports = {
  theme: {
    extend: {
      flexBasis: {
        '1/7': '14.2857143%',
        '2/7': '28.5714286%',
        '3/7': '42.8571429%',
        '4/7': '57.1428571%',
        '5/7': '71.4285714%',
        '6/7': '85.7142857%',
      }
    }
  }
}

theme customization 文档中了解有关自定义默认主题的更多信息。

任意值

如果您需要使用一次性的 flex-basis值,而该值没有必要包含在主题中,请使用方括号动态生成属性,使用任意值。

<div class="basis-[14.2857143%]">
  <!-- ... -->
</div>

进一步了解,请参考 任意值 文档.