* feat(tools): add seed/solution restore script * chore(curriculum): remove empty sections' markers * chore(curriculum): add seed + solution to Chinese * chore: remove old formatter * fix: update getChallenges parse translated challenges separately, without reference to the source * chore(curriculum): add dashedName to English * chore(curriculum): add dashedName to Chinese * refactor: remove unused challenge property 'name' * fix: relax dashedName requirement * fix: stray tag Remove stray `pre` tag from challenge file. Signed-off-by: nhcarrigan <nhcarrigan@gmail.com> Co-authored-by: nhcarrigan <nhcarrigan@gmail.com>
107 lines
2.2 KiB
Markdown
107 lines
2.2 KiB
Markdown
---
|
|
id: 5a94fe8569fb03452672e464
|
|
title: Create Grids within Grids
|
|
challengeType: 0
|
|
forumTopicId: 301128
|
|
dashedName: create-grids-within-grids
|
|
---
|
|
|
|
# --description--
|
|
|
|
Turning an element into a grid only affects the behavior of its direct descendants. So by turning a direct descendant into a grid, you have a grid within a grid.
|
|
|
|
For example, by setting the `display` and `grid-template-columns` properties of the element with the `item3` class, you create a grid within your grid.
|
|
|
|
# --instructions--
|
|
|
|
Turn the element with the `item3` class into a grid with two columns with a width of `auto` and `1fr` using `display` and `grid-template-columns`.
|
|
|
|
# --hints--
|
|
|
|
`item3` class should have a `grid-template-columns` property with `auto` and `1fr` as values.
|
|
|
|
```js
|
|
assert(
|
|
code.match(
|
|
/.item3\s*?{[\s\S]*grid-template-columns\s*?:\s*?auto\s*?1fr\s*?;[\s\S]*}/gi
|
|
)
|
|
);
|
|
```
|
|
|
|
`item3` class should have a `display` property with the value of `grid`.
|
|
|
|
```js
|
|
assert(code.match(/.item3\s*?{[\s\S]*display\s*?:\s*?grid\s*?;[\s\S]*}/gi));
|
|
```
|
|
|
|
# --seed--
|
|
|
|
## --seed-contents--
|
|
|
|
```html
|
|
<style>
|
|
.container {
|
|
font-size: 1.5em;
|
|
min-height: 300px;
|
|
width: 100%;
|
|
background: LightGray;
|
|
display: grid;
|
|
grid-template-columns: auto 1fr;
|
|
grid-template-rows: auto 1fr auto;
|
|
grid-gap: 10px;
|
|
grid-template-areas:
|
|
"advert header"
|
|
"advert content"
|
|
"advert footer";
|
|
}
|
|
.item1 {
|
|
background: LightSkyBlue;
|
|
grid-area: header;
|
|
}
|
|
|
|
.item2 {
|
|
background: LightSalmon;
|
|
grid-area: advert;
|
|
}
|
|
|
|
.item3 {
|
|
background: PaleTurquoise;
|
|
grid-area: content;
|
|
/* Only change code below this line */
|
|
|
|
|
|
/* Only change code above this line */
|
|
}
|
|
|
|
.item4 {
|
|
background: lightpink;
|
|
grid-area: footer;
|
|
}
|
|
|
|
.itemOne {
|
|
background: PaleGreen;
|
|
}
|
|
|
|
.itemTwo {
|
|
background: BlanchedAlmond;
|
|
}
|
|
|
|
</style>
|
|
|
|
<div class="container">
|
|
<div class="item1">header</div>
|
|
<div class="item2">advert</div>
|
|
<div class="item3">
|
|
<div class="itemOne">paragraph1</div>
|
|
<div class="itemTwo">paragraph2</div>
|
|
</div>
|
|
<div class="item4">footer</div>
|
|
</div>
|
|
```
|
|
|
|
# --solutions--
|
|
|
|
```html
|
|
<style>.item3 {grid-template-columns: auto 1fr; display: grid;}</style>
|
|
```
|