Skip to content

CSS Grid Container

How to create a CSS Grid container with display: grid, control column and row sizing using grid-template-columns and grid-template-rows, and align grids horizontally with justify-content or vertically with align-content.

Grid Container

To make an HTML element behave as a grid container, you have to set the display property to grid or inline-grid.

Grid containers consist of grid items, placed inside columns and rows.

The grid-template-columns Property

The grid-template-columns property defines the number of columns in your grid layout, and it can define the width of each column.

The value is a space-separated-list, where each value defines the width of the respective column.

If you want your grid layout to contain 4 columns, specify the width of the 4 columns, or "auto" if all columns should have the same width.

Example of a grid with 4 columns:

.grid-container {  
	display:  grid;  
	grid-template-columns:  auto auto auto auto;  
}

The grid-template-columns property can also be used to specify the size (width) of the columns.

Example: set size for the four columns:

.grid-container {  
	display:  grid;  
	grid-template-columns:  80px 200px auto 40px;  
}

The grid-template-rows Property

The grid-template-rows property defines the height of each row.

Example Grid Container: grid-template-rows

The value is a space-separated-list, where each value defines the height of the respective row:

.grid-container {  
	display:  grid;  
	grid-template-rows:  80px 200px;  
}

The justify-content Property

The justify-content property is used to align the whole grid inside the container.

Example Grid Container: justify-content

justify-content: space-evenly

The value space-evenly will give the columns equal amount of space between, and around them.

.grid-container {  
	display:  grid;  
	justify-content:  space-evenly;  
}

Example Grid Container: justify-content space-evenly

justify-content: space-around

The value space-around will give the columns equal amount of space around them.

.grid-container {  
	display:  grid;  
	justify-content:  space-around;  
}

Example Grid Container: justify-content space-evenly

justify-content: space-between

The value space-between will give the columns equal amount of space between them.

.grid-container {  
	display:  grid;  
	justify-content:  space-between;  
}

Example Grid Container: justify-content space-evenly

justify-content: center

The value center will align the grid in the middle of the container.

.grid-container {  
	display:  grid;  
	justify-content:  center;  
}

Example Grid Container: justify-content center

justify-content: start

The value start will align the grid at the beginning of the container.

.grid-container {  
	display:  grid;  
	justify-content:  start;  
}

Example Grid Container: justify-content start

justify-content: end

The value end will align the grid at the end of the container.

.grid-container {  
	display:  grid;  
	justify-content:  end;  
}

Example Grid Container: justify-content end

The align-content Property

The align-content property is used to vertically align the whole grid inside the container.

Example Grid Container: align-content

align-content: space-evenly

The value space-evenly will give the rows equal amount of space between, and around them:

.grid-container {  
	display:  grid;  
	height:  400px;  
	align-content:  space-evenly;  
}

Example Grid Container: align-content space-evenly

align-content: space-around

The value space-around will give the rows equal amount of space around them:

.grid-container {  
	display:  grid;  
	height:  400px;  
	align-content:  space-around;  
}

Example Grid Container: align-content space-around

align-content: space-between

The value space-between will give the rows equal amount of space between them:

.grid-container {  
	display:  grid;  
	height:  400px;  
	align-content:  space-between;  
}

Example Grid Container: align-content space-between

align-content: start

The value start will align the rows at the beginning of the container:

.grid-container {  
	display:  grid;  
	height:  400px;  
	align-content:  start;  
}

Example Grid Container: align-content start

align-content: center

The value center will align the rows in the middle of the container:

.grid-container {  
	display:  grid;  
	height:  400px;  
	align-content:  center;  
}

Example Grid Container: align-content center

align-content: end

The value end will align the rows at the end of the container:

.grid-container {  
	display:  grid;  
	height:  400px;  
	align-content:  end;  
}

Example Grid Container: align-content end

Navigation