CSS grid-template-columns Property
Example
Make a 4 columns grid container:
display: grid;
grid-template-columns: auto auto auto auto;
}
Definition and Usage
The grid-template-columns property specifies the number
(and the widths) of columns in a grid
layout.
The values are a space separated list, where each value specifies the size of the respective column.
| Default value: | none |
|---|---|
| Inherited: | no |
| Animatable: | yes. Read about animatable Try it |
| Version: | CSS Grid Layout Module Level 1 |
| JavaScript syntax: | object.style.gridTemplateColumns="50px 50px 50px" Try it |
Browser Support
The numbers in the table specify the first browser version that fully supports the property.
| Property | |||||
|---|---|---|---|---|---|
| grid-template-columns | 57 | 16 | 52 | 10 | 44 |
CSS Syntax
Property Values
| Value | Description | Demo |
|---|---|---|
| none | Default value. Columns are created if needed | Demo ❯ |
| auto | The size of the columns is determined by the size of the container and on the size of the content of the items in the column | Demo ❯ |
| max-content | Sets the size of each column to depend on the largest item in the column | Demo ❯ |
| min-content | Sets the size of each column to depend on the smallest item in the column | |
| minmax() | Defines a size range greater than or equal to a min value and less than or equal to a max value | |
| length | Sets the size of the columns, by using a legal length value. Read about length units | Demo ❯ |
| percentage | Sets the size of the columns, in percent, relative to the inline size of the container | |
| fit-content() | Sets the size of the columns in length or %, and works like the column will use the available space, but it will never expand the max-content size | Demo ❯ |
| repeat() | Repeats a set of columns in the grid | Demo ❯ |
| subgrid | Indicates that the grid will adopt the spanned portion of its parent grid in that axis | |
| initial | Sets this property to its default value. Read about initial | |
| inherit | Inherits this property from its parent element. Read about inherit |
More Examples
Example
Make a 4 columns grid container, and specify a size for each column:
display: grid;
grid-template-columns: 30px 200px auto 100px;
}
Related Pages
CSS Tutorial: CSS Grid Layout
CSS Reference: The grid-template-rows property
CSS Reference: The grid-template property