Flex
Initial
Use to allow a flex item to shrink but not grow, taking into account its initial size:
Use flex-1
to allow a flex item to grow and shrink as needed, ignoring its initial size:
<div class="flex">
<div class="flex-1 ...">
<!-- Will grow and shrink as needed without taking initial size into account -->
</div>
<div class="flex-1 ...">
<!-- Will grow and shrink as needed without taking initial size into account -->
<div class="flex-1 ...">
<!-- Will grow and shrink as needed without taking initial size into account -->
</div>
</div>
Auto
Use flex-auto
to allow a flex item to grow and shrink, taking into account its initial size:
Use flex-none
to prevent a flex item from growing or shrinking:
<div class="flex ...">
<div class="flex-1 ...">
<!-- Will grow and shrink as needed -->
</div>
<!-- Will not grow or shrink -->
</div>
<div class="flex-1 ...">
<!-- Will grow and shrink as needed -->
</div>
</div>
Responsive
To control how a flex item both grows and shrinks at a specific breakpoint, add a {screen}:
prefix to any existing utility class. For example, use md:flex-1
to apply the flex-1
utility at only medium screen sizes and above.
For more information about Tailwind’s responsive design features, check out the documentation.
By default, Tailwind provides four flex
utilities. You change, add, or remove these by editing the theme.flex
section of your Tailwind config.
// tailwind.config.js
theme: {
flex: {
'1': '1 1 0%',
auto: '1 1 auto',
- initial: '0 1 auto',
none: 'none',
+ '2': '2 2 0%',
}
}
}
You can control which variants are generated for the flex utilities by modifying the flex
property in the variants
section of your tailwind.config.js
file.
For example, this config will also generate hover and focus variants:
If you don’t plan to use the flex utilities in your project, you can disable them entirely by setting the flex
property to false
in the corePlugins
section of your config file:
// tailwind.config.js
module.exports = {
corePlugins: {
// ...
+ flex: false,
}