feat(curriculum): CSS Box Model project (#42182)

* feat(curriculum): add initial steps

Add the initial step files for this project.

* feat(curriculum): write test texts

Add some test text (tests coming soon).

* feat: tests for HTML bits

Add tests for the HTML bits - CSS holding off until parser lands.

* feat: CSS tests

New CSS parser works great!

* fix: link href

Fix the href in the boilerplate.

* chore: apply suggestions from code review

Co-authored-by: gikf <60067306+gikf@users.noreply.github.com>

* fix: clarify link element

* fix: optional chaining

* fix: remove unused meta props

* fix: update helper and fix tests

* chore: apply tom's review suggestions

Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>

* chore: no console logs

Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>

* feat: intro

Add introductory text, tweak instructions a bit.

Co-authored-by: gikf <60067306+gikf@users.noreply.github.com>
Co-authored-by: Tom <20648924+moT01@users.noreply.github.com>
Co-authored-by: Shaun Hamilton <shauhami020@gmail.com>
This commit is contained in:
Nicholas Carrigan (he/him)
2021-09-10 09:17:03 -07:00
committed by GitHub
parent ac11c85409
commit a563b3b4e4
50 changed files with 3907 additions and 0 deletions

View File

@@ -0,0 +1,75 @@
---
id: 60a3e3396c7b40068ad6997e
title: Part 21
challengeType: 0
dashedName: part-21
---
# --description--
Now `.one` is centered horizontally, but its top margin is pushing past the canvas and onto the frame's border, shifting the entire canvas down 20 pixels.
Add `padding: 1px;` to `.canvas` to give the `.one` element something solid to push off of.
# --hints--
You should set the `padding` property to `1px`.
```js
const hasPadding = new __helpers.CSSHelp(document).getCSSRules().some(x => x.style.padding === '1px');
assert(hasPadding);
```
Your `.canvas` element should have a `padding` value of `1px`.
```js
const canvasPadding = new __helpers.CSSHelp(document).getStyle('.canvas')?.getPropertyValue('padding');
assert(canvasPadding === '1px');
```
# --seed--
## --seed-contents--
```css
.canvas {
width: 500px;
height: 600px;
background-color: #4d0f00;
--fcc-editable-region--
--fcc-editable-region--
}
.frame {
border: 50px solid black;
width: 500px;
padding: 50px;
margin: 20px auto;
}
.one {
width: 425px;
height: 150px;
background-color: #efb762;
margin: 20px auto;
}
```
```html
<!DOCTYPE html>
<html lang="en">
<head>
<meta charset="UTF-8">
<title>Rothko</title>
<link href="./styles.css" rel="stylesheet">
</head>
<body>
<div class="frame">
<div class="canvas">
<div class="one"></div>
</div>
</div>
</body>
</html>
```