2018-09-30 23:01:58 +01:00
---
id: 5a94fe0569fb03452672e45c
title: Divide the Grid Into an Area Template
challengeType: 0
videoUrl: 'https://scrimba.com/p/pByETK/cLLpGAy'
2019-08-05 09:17:33 -07:00
forumTopicId: 301130
2018-09-30 23:01:58 +01:00
---
## Description
< section id = 'description' >
You can group cells of your grid together into an < dfn > area< / dfn > and give the area a custom name. Do this by using < code > grid-template-areas< / code > on the container like this:
2019-05-14 01:11:58 -07:00
```css
grid-template-areas:
"header header header"
"advert content content"
"footer footer footer";
```
2018-09-30 23:01:58 +01:00
The code above merges the top three cells together into an area named < code > header< / code > , the bottom three cells into a < code > footer< / code > area, and it makes two areas in the middle row; < code > advert< / code > and < code > content< / code > .
2019-03-22 22:02:12 +08:00
< strong > Note:< / strong > Every word in the code represents a cell and every pair of quotation marks represent a row.
2018-09-30 23:01:58 +01:00
In addition to custom labels, you can use a period (< code > .< / code > ) to designate an empty cell in the grid.
< / section >
## Instructions
< section id = 'instructions' >
Place the area template so that the cell labeled < code > advert< / code > becomes an empty cell.
< / section >
## Tests
< section id = 'tests' >
```yml
2018-10-04 14:37:37 +01:00
tests:
- text: < code > container</ code > class should have a < code > grid-template-areas</ code > property similar to the preview but has < code > .</ code > instead of the < code > advert</ code > area.
2020-03-11 06:56:34 -07:00
testString: const removeCssComments = str => str.replace(/\/\*[\s\S]+?\*\//g, ''); assert(removeCssComments(code).match(/.container\s*?{[\s\S]*grid-template-areas\s*?:\s*?"\s*?header\s*?header\s*?header\s*?"\s*?"\s*?.\s*?content\s*?content\s*?"\s*?"\s*?footer\s*?footer\s*?footer\s*?"\s*?;[\s\S]*}/gi));
2018-09-30 23:01:58 +01:00
```
< / section >
## Challenge Seed
< section id = 'challengeSeed' >
< div id = 'html-seed' >
```html
< style >
.item1{background:LightSkyBlue;}
.item2{background:LightSalmon;}
.item3{background:PaleTurquoise;}
.item4{background:LightPink;}
.item5{background:PaleGreen;}
2018-10-08 01:01:53 +01:00
2018-09-30 23:01:58 +01:00
.container {
font-size: 40px;
min-height: 300px;
width: 100%;
background: LightGray;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: 1fr 1fr 1fr;
grid-gap: 10px;
grid-template-areas:
2020-02-27 07:20:46 -08:00
/* Only change code below this line */
2018-09-30 23:01:58 +01:00
"header header header"
"advert content content"
"footer footer footer";
2020-02-27 07:20:46 -08:00
/* Only change code above this line */
2018-09-30 23:01:58 +01:00
}
< / style >
2018-10-08 01:01:53 +01:00
2018-09-30 23:01:58 +01:00
< div class = "container" >
< div class = "item1" > 1< / div >
< div class = "item2" > 2< / div >
< div class = "item3" > 3< / div >
< div class = "item4" > 4< / div >
< div class = "item5" > 5< / div >
< / div >
```
< / div >
< / section >
## Solution
< section id = 'solution' >
2018-10-23 16:21:53 +03:00
```html
< style >
.item1{background:LightSkyBlue;}
.item2{background:LightSalmon;}
.item3{background:PaleTurquoise;}
.item4{background:LightPink;}
.item5{background:PaleGreen;}
.container {
font-size: 40px;
min-height: 300px;
width: 100%;
background: LightGray;
display: grid;
grid-template-columns: 1fr 1fr 1fr;
grid-template-rows: 1fr 1fr 1fr;
grid-gap: 10px;
grid-template-areas:
"header header header"
". content content"
"footer footer footer";
}
< / style >
2018-09-30 23:01:58 +01:00
2018-10-23 16:21:53 +03:00
< div class = "container" >
< div class = "item1" > 1< / div >
< div class = "item2" > 2< / div >
< div class = "item3" > 3< / div >
< div class = "item4" > 4< / div >
< div class = "item5" > 5< / div >
< / div >
2018-09-30 23:01:58 +01:00
```
< / section >