Skip to content
0

Grid Classes ​

Pre-built CSS Grid utility classes for defining grid templates, column/row spans, and auto-flow behavior.

Grid Template Columns ​

Define the number of columns in a grid container.

ClassProperties
.grid-cols-1grid-template-columns: repeat(1, 1fr)
.grid-cols-2grid-template-columns: repeat(2, 1fr)
.grid-cols-3grid-template-columns: repeat(3, 1fr)
.grid-cols-4grid-template-columns: repeat(4, 1fr)
.grid-cols-5grid-template-columns: repeat(5, 1fr)
.grid-cols-6grid-template-columns: repeat(6, 1fr)
.grid-cols-7grid-template-columns: repeat(7, 1fr)
.grid-cols-8grid-template-columns: repeat(8, 1fr)
.grid-cols-9grid-template-columns: repeat(9, 1fr)
.grid-cols-10grid-template-columns: repeat(10, 1fr)
.grid-cols-11grid-template-columns: repeat(11, 1fr)
.grid-cols-12grid-template-columns: repeat(12, 1fr)
.grid-cols-nonegrid-template-columns: none

Column Span ​

Make an item span multiple columns.

ClassProperties
.col-span-1grid-column: span 1 / span 1
.col-span-2grid-column: span 2 / span 2
.col-span-3grid-column: span 3 / span 3
.col-span-4grid-column: span 4 / span 4
.col-span-5grid-column: span 5 / span 5
.col-span-6grid-column: span 6 / span 6
.col-span-7grid-column: span 7 / span 7
.col-span-8grid-column: span 8 / span 8
.col-span-9grid-column: span 9 / span 9
.col-span-10grid-column: span 10 / span 10
.col-span-11grid-column: span 11 / span 11
.col-span-12grid-column: span 12 / span 12
.col-span-fullgrid-column: 1 / -1

Row Span ​

Make an item span multiple rows.

ClassProperties
.row-span-1grid-row: span 1 / span 1
.row-span-2grid-row: span 2 / span 2
.row-span-3grid-row: span 3 / span 3
.row-span-4grid-row: span 4 / span 4
.row-span-5grid-row: span 5 / span 5
.row-span-6grid-row: span 6 / span 6
.row-span-fullgrid-row: 1 / -1

Grid Auto Flow ​

Control how auto-placed items flow into the grid.

ClassProperties
.grid-flow-rowgrid-auto-flow: row
.grid-flow-colgrid-auto-flow: column
.grid-flow-densegrid-auto-flow: dense
.grid-flow-row-densegrid-auto-flow: row dense
.grid-flow-col-densegrid-auto-flow: column dense

Basic Usage ​

html
<!-- 3-column grid -->
<div class="grid grid-cols-3 gap-4">
  <div class="bg-info-100 p-4">1</div>
  <div class="bg-info-100 p-4">2</div>
  <div class="bg-info-100 p-4">3</div>
</div>

<!-- Item spanning 2 columns -->
<div class="grid grid-cols-4 gap-4">
  <div class="col-span-2 bg-purple-100 p-4">Spans 2 columns</div>
  <div class="bg-purple-100 p-4">1 column</div>
  <div class="bg-purple-100 p-4">1 column</div>
</div>

<!-- Full-width item in a grid -->
<div class="grid grid-cols-3 gap-4">
  <div class="col-span-full bg-warning-100 p-4">Full width</div>
  <div class="bg-warning-100 p-4">1</div>
  <div class="bg-warning-100 p-4">2</div>
  <div class="bg-warning-100 p-4">3</div>
</div>

SCSS Source ​

scss
// From _utilities.scss — generate-grid-flex-classes()
@for $i from 1 through 12 {
  .grid-cols-#{$i} { grid-template-columns: repeat(#{$i}, 1fr); }
}
.grid-cols-none { grid-template-columns: none; }

@for $i from 1 through 12 {
  .col-span-#{$i} { grid-column: span #{$i} / span #{$i}; }
}
.col-span-full { grid-column: 1 / -1; }

@for $i from 1 through 6 {
  .row-span-#{$i} { grid-row: span #{$i} / span #{$i}; }
}
.row-span-full { grid-row: 1 / -1; }

TIP

For more advanced grid features (auto-fill/fit, subgrid, masonry, named areas), see the Grid Mixins documentation.

Released under the MIT License.