$cat ~/articles/web/tutorial/css-grid-complete-guide.md
CSS Grid: A Complete Guide
Master CSS Grid layout with practical examples — from basic grids to complex responsive layouts.
K
Kartik Gupta
Author
April 10, 2026
Published
1 min read
Read time
Basic Grid
css.container { display: grid; grid-template-columns: repeat(3, 1fr); gap: 1rem; }
This creates a 3-column grid with equal columns and 1rem gap.
Auto-fit vs Auto-fill
css/* Expands to fill available space */ .grid-auto-fit { grid-template-columns: repeat(auto-fit, minmax(250px, 1fr)); } /* Maintains fixed sizes even with extra space */ .grid-auto-fill { grid-template-columns: repeat(auto-fill, minmax(250px, 1fr)); }
Named Areas
Grid areas make layouts declarative:
css.layout { display: grid; grid-template-columns: 200px 1fr 200px; grid-template-areas: "header header header" "sidebar main aside" "footer footer footer"; } .header { grid-area: header; } .sidebar { grid-area: sidebar; } .main { grid-area: main; } .aside { grid-area: aside; } .footer { grid-area: footer; }
Responsive Grids
With Grid, responsive layouts become trivial:
css.gallery { display: grid; grid-template-columns: repeat(auto-fit, minmax(300px, 1fr)); gap: 1.5rem; }
No media queries needed — the grid figures it out automatically.
When to Use Grid vs Flexbox
- Grid: When you need two-dimensional control (rows AND columns)
- Flexbox: When layout is essentially one-dimensional
Most layouts benefit from both — use them together.