CodeBlanks Logo Icon CodeBlanks

Grid-template-columns

CSS course · Intermediate · Lesson 35/98

Learn the column structure with grid-template-columns.

Draw the column structure

The grid-template-columns declaration lists column widths in order. Each value is space-separated; as many values as you write, that many columns appear. grid-template-columns: 200px 200px gives two fixed columns; 1fr 1fr 1fr gives three equal ones.

These columns are called grid tracks. A track is the space between two grid lines. Column tracks run horizontally, row tracks run vertically.

The fr unit

fr (fraction) is a flexible unit unique to grid. It divides the remaining free space in the container according to the fr values you write. 1fr 2fr means the second column is twice as wide as the first.

You can mix it with fixed px or % values. 200px 1fr keeps the first column at 200 pixels; the second takes whatever is left. That makes a sidebar + content layout easy.

Exercise Three equal columns for cards

The .cards selector already contains display: grid. Add grid-template-columns: 1fr 1fr 1fr so three equal columns appear.

Show example solution
.cards {
  display: grid;
  grid-template-columns: 1fr 1fr 1fr;
}

Test yourself

  1. Which one creates three equal columns?

    .cards {
      display: grid;
      grid-template-columns: ?
    }
    • grid-template-columns: 3fr
    • grid-template-columns: 1fr 1fr 1fr
    • grid-template-columns: 3cols
    • grid-columns: 3
    Show answer

    grid-template-columns: 1fr 1fr 1fr — Correct. 1fr 1fr 1fr gives three equal columns; each takes one third of the remaining space.

  2. Two columns, second twice as wide

    .layout {
      display: grid;
      grid-template-columns: ____;
    }
    Show answer
    .layout {
      display: grid;
      grid-template-columns: 1fr 2fr;
    }
  3. Match each column value to its meaning

    1fr 1fr 1fr
    Three equal columns
    200px 1fr
    Fixed + flexible
    1fr 2fr
    Two ratio columns
    50%
    One percent column

All lessons in Intermediate