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

4.4 KiB

id title challengeType dashedName
5d822fd413a79914d39e98e9 Step 33 0 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.

assert.exists(new __helpers.CSSHelp(document).getStyle('.foreground-buildings'));

Dovresti rimuovere la proprietà position da .foreground-buildings.

assert.isEmpty(new __helpers.CSSHelp(document).getStyle('.foreground-buildings')?.position);

Dovresti rimuovere la proprietà top da .foreground-buildings.

assert.isEmpty(new __helpers.CSSHelp(document).getStyle('.foreground-buildings')?.top);

Dovresti aggiungere la proprietà position con il valore absolute a .background-buildings, .foreground-buildings.

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.

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.

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--

<!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>
: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%;
}