freeCodeCamp/curriculum/challenges/italian/14-responsive-web-design-22/learn-css-variables-by-buil.../5d822fd413a79914d39e98e9.md

224 lines
4.4 KiB
Markdown
Raw Normal View History

---
id: 5d822fd413a79914d39e98e9
title: Step 33
challengeType: 0
dashedName: step-33
---
# --description--
Dovresti ottimizzare il codice. Sposta le proprietà e i valori `position` e `top` da `.foreground-buildings` a `.background-buildings`. Quindi seleziona sia `.background-buildings` che `.foreground-buildings`, applicando efficacemente gli stili a entrambi gli elementi. Puoi utilizzare una virgola (`,`) per separare i selettori in questo modo: `selettore1, selettore2`.
# --hints--
Non dovresti rimuovere la dichiarazione `.foreground-buildings`.
```js
assert.exists(new __helpers.CSSHelp(document).getStyle('.foreground-buildings'));
```
Dovresti rimuovere la proprietà `position` da `.foreground-buildings`.
```js
assert.isEmpty(new __helpers.CSSHelp(document).getStyle('.foreground-buildings')?.position);
```
Dovresti rimuovere la proprietà `top` da `.foreground-buildings`.
```js
assert.isEmpty(new __helpers.CSSHelp(document).getStyle('.foreground-buildings')?.top);
```
Dovresti aggiungere la proprietà `position` con il valore `absolute` a `.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');
```
Dovresti aggiungere la proprietà `top` con il valore `0` a `.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');
```
Dovresti usare una virgola per utilizzare entrambi i selettori `.foreground-buildings` e `.background-buildings` nella stessa dichiarazione.
```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 lang="en">
<head>
<meta charset="UTF-8">
<title>City Skyline</title>
<link href="styles.css" rel="stylesheet" />
</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%;
}
```