CSS Grid Layout
CSS Grid Layout excels at dividing a page into major regions or defining the relationship in terms of size, position, and layer, between parts of a control built from HTML primitives.
Like tables, grid layout enables an author to align elements into columns and rows. However, many more layouts are either possible or easier with CSS grid than they were with tables. For example, a grid container's child elements could position themselves so they actually overlap and layer, similar to CSS positioned elements.
Basic example
The example below shows a three-column track grid with new rows created at a minimum of 100 pixels and a maximum of auto. Items have been placed onto the grid using line-based placement.
HTML
<div class="wrapper"> <div class="one">One</div> <div class="two">Two</div> <div class="three">Three</div> <div class="four">Four</div> <div class="five">Five</div> <div class="six">Six</div> </div>
CSS
.wrapper { display: grid; grid-template-columns: repeat(3, 1fr); gap: 10px; grid-auto-rows: minmax(100px, auto); } .one { grid-column: 1 / 3; grid-row: 1; } .two { grid-column: 2 / 4; grid-row: 1 / 3; } .three { grid-column: 1; grid-row: 2 / 5; } .four { grid-column: 3; grid-row: 3; } .five { grid-column: 2; grid-row: 4; } .six { grid-column: 3; grid-row: 4; }
Reference
CSS properties
grid-template-columns
grid-template-rows
grid-template-areas
grid-template
grid-auto-columns
grid-auto-rows
grid-auto-flow
grid
grid-row-start
grid-column-start
grid-row-end
grid-column-end
grid-row
grid-column
grid-area
row-gap
column-gap
gap
-
masonry-auto-flow
-
align-tracks
-
justify-tracks
CSS functions
CSS data types
Glossary entries
Guides
- Basic concepts of Grid Layout
- Relationship of Grid Layout to other layout methods
- Layout using line-based placement
- Grid template areas
- Layout using named grid lines
- Auto-placement in CSS Grid Layout
- Box alignment in CSS Grid Layout
- CSS Grid, Logical Values and Writing Modes
- CSS Grid Layout and accessibility
- CSS Grid and progressive enhancement
- Realizing common layouts using CSS Grid Layout
- Subgrid
- Masonry Layout
External resources
- CSS Grid and IE11 (polyfill)
- Examples from Jen Simmons
- Grid by Example - a collection of usage examples and video tutorials
- Codrops Grid Reference
- Firefox DevTools CSS Grid Inspector
- CSS Grid Playground
- Grid Garden - A game for learning CSS grid
Specifications
Specification | Status | Comment |
---|---|---|
CSS Grid Layout Module Level 3 | Editor's Draft | Adds masonry. |
CSS Grid Layout Module Level 2 | Working Draft | Added subgrids. |
CSS Grid Layout | Candidate Recommendation | Initial definition. |
© 2005–2021 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/CSS_Grid_Layout