### Grid layout Basic website layout using `grid`. #### HTML ```html
Header
Content
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
``` #### CSS ```css .grid-layout { display: grid; grid-gap: 10px; grid-template-columns: repeat(3, 1fr); grid-template-areas: 'sidebar header header' 'sidebar content content' 'sidebar footer footer'; color: white; } .grid-layout > div { background: #333; padding: 10px; } .sidebar { grid-area: sidebar; } .content { grid-area: content; } .header { grid-area: header; } .footer { grid-area: footer; } ``` #### Demo
Header
Sidebar
Content
Lorem ipsum dolor sit amet, consectetur adipisicing elit.
#### Explanation 1. `display: grid` enables grid. 2. `grid-gap: 10px` defines spacing between the elements. 3. `grid-template-columns: repeat(3, 1fr)` defines 3 columns of the same size. 4. `grid-template-areas` defines the names of grid areas. 5. `grid-area: sidebar` makes the element use the area with the name `sidebar`. #### Browser support ✅ No caveats. * https://caniuse.com/#feat=css-grid