Flexbox & Grid
Grid Template Rows
Utilities for specifying the rows in a grid layout.
Quick reference
Class | Properties |
---|---|
grid-rows-1 | grid-template-rows: repeat(1, minmax(0, 1fr)); |
grid-rows-2 | grid-template-rows: repeat(2, minmax(0, 1fr)); |
grid-rows-3 | grid-template-rows: repeat(3, minmax(0, 1fr)); |
grid-rows-4 | grid-template-rows: repeat(4, minmax(0, 1fr)); |
grid-rows-5 | grid-template-rows: repeat(5, minmax(0, 1fr)); |
grid-rows-6 | grid-template-rows: repeat(6, minmax(0, 1fr)); |
grid-rows-none | grid-template-rows: none; |
Basic usage
Specifying the rows in a grid
Use the grid-rows-{n}
utilities to create grids with n equally sized rows.
<div class="grid grid-rows-4 grid-flow-col gap-4">
<div>01</div>
<!-- ... -->
<div>09</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:grid-rows-6
to only apply the grid-rows-6
utility on hover.
<div class="grid grid-rows-2 hover:grid-rows-6">
<!-- ... -->
</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:grid-rows-6
to apply the grid-rows-6
utility at only medium screen sizes and above.
<div class="grid grid-rows-2 md:grid-rows-6">
<!-- ... -->
</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 includes grid-template-row
utilities for creating basic grids with up to 6 equal width rows. You can customize these values by editing theme.gridTemplateRows
or theme.extend.gridTemplateRows
in your tailwind.config.js
file.
You have direct access to the grid-template-rows
CSS property here so you can make your custom rows values as generic or as complicated and site-specific as you like.
tailwind.config.js
module.exports = {
theme: {
extend: {
gridTemplateRows: {
// Simple 8 row grid
'8': 'repeat(8, minmax(0, 1fr))',
// Complex site-specific row configuration
'layout': '200px minmax(900px, 1fr) 100px',
}
}
}
}
Learn more about customizing the default theme in the theme customization documentation.
Arbitrary values
If you need to use a one-off grid-template-rows
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="grid grid-rows-[200px_minmax(900px,_1fr)_100px]">
<!-- ... -->
</div>
Learn more about arbitrary value support in the arbitrary values documentation.