Back to Freecodecamp

Step 29

curriculum/challenges/english/blocks/learn-typography-by-building-a-nutrition-label/615f51257a8a516d80b6c743.md

latest1.8 KB
Original Source

--description--

Create a new div below your .large element and give it a class attribute set to calories-info.

--hints--

You should create another div element.

js
assert(document.querySelectorAll('div')?.length === 4);

Your new div should have a class attribute set to calories-info.

js
assert(document.querySelector('.label')?.lastElementChild?.classList?.contains('calories-info'));

Your new div should come after the .large element.

js
assert(document.querySelector('.label')?.lastElementChild?.previousElementSibling?.classList?.contains('large'));

--seed--

--seed-contents--

html
<!DOCTYPE html>
<html lang="en">

<head>
  <meta charset="UTF-8">
  <title>Nutrition Label</title>
  <link href="https://fonts.googleapis.com/css?family=Open+Sans:400,700,800" rel="stylesheet">
  <link href="./styles.css" rel="stylesheet">
</head>

<body>
  <div class="label">
    <header>
      <h1 class="bold">Nutrition Facts</h1>
      <div class="divider"></div>
      <p>8 servings per container</p>
      <p class="bold">Serving size <span>2/3 cup (55g)</span></p>
    </header>
    <div class="divider large"></div>
--fcc-editable-region--

--fcc-editable-region--
  </div>
</body>
</html>
css
* {
  box-sizing: border-box;
}

html {
  font-size: 16px;
}

body {
  font-family: 'Open Sans', sans-serif;
}

.label {
  border: 2px solid black;
  width: 270px;
  margin: 20px auto;
  padding: 0 7px;
}

header h1 {
  text-align: center;
  margin: -4px 0;
  letter-spacing: 0.15px
}

p {
  margin: 0;
  display: flex;
  justify-content: space-between;
}

.divider {
  border-bottom: 1px solid #888989;
  margin: 2px 0;
}

.bold {
  font-weight: 800;
}

.large {
  height: 10px;
}

.large, .medium {
  background-color: black;
  border: 0;
}