CSS: Grid Layout

CSS Grid lays out content across rows and columns, making two-dimensional page and card layouts easier to describe.

What you will learn

Minimal example

.cards {
  display: grid;
  grid-template-columns: repeat(3, minmax(0, 1fr));
  gap: 1rem;
}

@media (max-width: 40rem) {
  .cards { grid-template-columns: 1fr; }
}

Grid defines both dimensions. Use fr units to share available space and gap to separate tracks without adding margins to every child.

Common mistakes