​
Quick reference

Class
Properties
flex-1flex: 1 1 0%;
flex-autoflex: 1 1 auto;
flex-initialflex: 0 1 auto;
flex-noneflex: none;

​
Basic usage

​
Initial

Use flex-initial to allow a flex item to shrink but not grow, taking into account its initial size:

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

​
Flex 1

Use flex-1 to allow a flex item to grow and shrink as needed, ignoring its initial size:

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

​
Auto

Use flex-auto to allow a flex item to grow and shrink, taking into account its initial size:

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

​
None

Use flex-none to prevent a flex item from growing or shrinking:

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

​
Applying conditionally

​
Hover, focus, and other states

Tailwind lets you conditionally apply utility classes in different states using variant modifiers. For example, use hover:flex-1 to only apply the flex-1 utility on hover.

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

For a complete list of all available state modifiers, check out the Hover, Focus, & Other States documentation.

​
Breakpoints and media queries

You can also use variant modifiers to target media queries like responsive breakpoints, dark mode, prefers-reduced-motion, and more. For example, use md:flex-1 to apply the flex-1 utility at only medium screen sizes and above.

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

To learn more, check out the documentation on Responsive Design, Dark Mode and other media query modifiers.


​
Using custom values

​
Customizing your theme

By default, Tailwind provides four flex utilities. You can customize these values by editing theme.flex or theme.extend.flex in your tailwind.config.js file.

tailwind.config.js
module.exports = {
  theme: {
    extend: {
      flex: {
        '2': '2 2 0%'
      }
    }
  }
}

Learn more about customizing the default theme in the theme customization documentation.

​
Arbitrary values

If you need to use a one-off flex value that doesn’t make sense to include in your theme, use square brackets to generate a property on the fly using any arbitrary value.

<div class="flex-[2_2_0%]">
  <!-- ... -->
</div>

Learn more about arbitrary value support in the arbitrary values documentation.