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 bg-gray-200">
<div class="flex-1 text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">
Short
</div>
<div class="flex-1 text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">
Medium length
<div class="flex-1 text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">
Significantly larger amount of content
</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 bg-gray-200">
<div class="flex-1 text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">
Item that can grow or shrink if needed
</div>
Item that cannot grow or shrink
</div>
<div class="flex-1 text-gray-700 text-center bg-gray-400 px-4 py-2 m-2">
Item that can grow or shrink if 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.
all
sm
md
lg
Item that can grow or shrink if needed
Responsive flex item
Item that can grow or shrink if needed
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%',
}
}
}
By default, only responsive variants are generated for flex utilities.
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,
}