Files
Shaun Hamilton 25aa04e2e7 chore(curriculum): standardise titles for rwd-beta (#45398)
* chore(curriculum): accessibility-quiz

* chore(curriculum): cafe-menu

* chore(curriculum): ferris-wheel

* chore(curriculum): fix ferris-wheel tests

* chore(curriculum): colored-markers

* chore(curriculum): photo-gallery

* chore(curriculum): magazine

* chore(curriculum): penguin

* chore(curriculum): city-skyline

* chore(curriculum): registration-form

* chore(curriculum): picasso-painting

* chore(curriculum): balance-sheet

* chore(curriculum): piano

* chore(curriculum): rothko-painting

* fix: title min 15 chars
2022-03-14 16:54:43 +01:00

223 lines
4.3 KiB
Markdown

---
id: 5d822fd413a79914d39e98e9
title: Step 33
challengeType: 0
dashedName: step-33
---
# --description--
I see some code that can be optimized. Move the `position` and `top` properties and values from `.foreground-buildings` to `.background-buildings`. Then select both `.background-buildings` and `.foreground-buildings` there, effectively applying those styles to both of the elements. You can use a comma (`,`) to separate selectors like this: `selector1, selector2`.
# --hints--
You should not remove the `.foreground-buildings` declaration.
```js
assert.exists(new __helpers.CSSHelp(document).getStyle('.foreground-buildings'));
```
You should remove the `position` property from `.foreground-buildings`.
```js
assert.isEmpty(new __helpers.CSSHelp(document).getStyle('.foreground-buildings')?.position);
```
You should remove the `top` property from `.foreground-buildings`.
```js
assert.isEmpty(new __helpers.CSSHelp(document).getStyle('.foreground-buildings')?.top);
```
You should add the `position` property of `absolute` to `.background-buildings, foreground-buildings`.
```js
function eitherOr() {
const a = new __helpers.CSSHelp(document)
return a.getStyle('.background-buildings, .foreground-buildings') ?? a.getStyle('.foreground-buildings, .background-buildings');
}
assert.equal(eitherOr()?.position, 'absolute');
```
You should add the `top` property of `0` to `.background-buildings, foreground-buildings`.
```js
function eitherOr() {
const a = new __helpers.CSSHelp(document)
return a.getStyle('.background-buildings, .foreground-buildings') ?? a.getStyle('.foreground-buildings, .background-buildings');
}
assert.equal(eitherOr()?.top, '0px');
```
You should use a comma to use both `.foreground-buildings` and `.background-buildings` selectors in the same style declaration.
```js
function eitherOr() {
const a = new __helpers.CSSHelp(document)
return a.getStyle('.background-buildings, .foreground-buildings') ?? a.getStyle('.foreground-buildings, .background-buildings');
}
assert.exists(eitherOr());
```
# --seed--
## --seed-contents--
```html
<!DOCTYPE html>
<html>
<head>
<title>City Skyline</title>
<link href="styles.css" rel="stylesheet" type="text/css" />
</head>
<body>
<div class="background-buildings">
<div></div>
<div></div>
<div class="bb1">
<div class="bb1a"></div>
<div class="bb1b"></div>
<div class="bb1c"></div>
<div class="bb1d"></div>
</div>
<div class="bb2"></div>
<div class="bb3"></div>
<div></div>
<div class="bb4"></div>
<div></div>
<div></div>
</div>
<div class="foreground-buildings">
<div class="fb1"></div>
<div class="fb2"></div>
<div class="fb3"></div>
<div class="fb4"></div>
<div class="fb5"></div>
<div class="fb6"></div>
</div>
</body>
</html>
```
```css
:root {
--building-color1: #aa80ff;
--building-color2: #66cc99;
--building-color3: #cc6699;
--building-color4: #538cc6;
}
* {
border: 1px solid black;
box-sizing: border-box;
}
body {
height: 100vh;
margin: 0;
overflow: hidden;
}
--fcc-editable-region--
.background-buildings {
width: 100%;
height: 100%;
display: flex;
align-items: flex-end;
justify-content: space-evenly;
}
.bb1 {
width: 10%;
height: 70%;
display: flex;
flex-direction: column;
align-items: center;
}
.bb1a {
width: 70%;
height: 10%;
background-color: var(--building-color1);
}
.bb1b {
width: 80%;
height: 10%;
background-color: var(--building-color1);
}
.bb1c {
width: 90%;
height: 10%;
background-color: var(--building-color1);
}
.bb1d {
width: 100%;
height: 70%;
background-color: var(--building-color1);
}
.bb2 {
width: 10%;
height: 50%;
background-color: var(--building-color2);
}
.bb3 {
width: 10%;
height: 55%;
background-color: var(--building-color3);
}
.bb4 {
width: 11%;
height: 58%;
background-color: var(--building-color4);
}
.foreground-buildings {
width: 100%;
height: 100%;
position: absolute;
top: 0;
display: flex;
align-items: flex-end;
justify-content: space-evenly;
}
--fcc-editable-region--
.fb1 {
width: 10%;
height: 60%;
}
.fb2 {
width: 10%;
height: 40%;
}
.fb3 {
width: 10%;
height: 35%;
}
.fb4 {
width: 8%;
height: 45%;
}
.fb5 {
width: 10%;
height: 33%;
}
.fb6 {
width: 9%;
height: 38%;
}
```