Learn Basic CSS by Building a Cafe Menu - Step 73

Tell us what’s happening:
Describe your issue in detail here.

Your code so far

I don’t know what’s wrong in this code. I have to add the top and the bottom margin at a p that have the class “item”.

Target all the p elements nested in elements with the class named item and set their top and bottom margin to be 5px.

<!-- file: index.html -->
<!DOCTYPE html>
<html lang="en">
  <head>
    <meta charset="utf-8" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <title>Cafe Menu</title>
    <link href="styles.css" rel="stylesheet"/>
  </head>
  <body>
    <div class="menu">
      <main>
        <h1>CAMPER CAFE</h1>
        <p class="established">Est. 2020</p>
        <hr>
        <section>
          <h2>Coffee</h2>
          <article class="item">
            <p class="flavor">French Vanilla</p><p class="price">3.00</p>
          </article>
          <article class="item">
            <p class="flavor">Caramel Macchiato</p><p class="price">3.75</p>
          </article>
          <article class="item">
            <p class="flavor">Pumpkin Spice</p><p class="price">3.50</p>
          </article>
          <article class="item">
            <p class="flavor">Hazelnut</p><p class="price">4.00</p>
          </article>
          <article class="item">
            <p class="flavor">Mocha</p><p class="price">4.50</p>
          </article>
        </section>
        <section>
          <h2>Desserts</h2>
          <article class="item">
            <p class="dessert">Donut</p><p class="price">1.50</p>
          </article>
          <article class="item">
            <p class="dessert">Cherry Pie</p><p class="price">2.75</p>
          </article>
          <article class="item">
            <p class="dessert">Cheesecake</p><p class="price">3.00</p>
          </article>
          <article class="item">
            <p class="dessert">Cinnamon Roll</p><p class="price">2.50</p>
          </article>
        </section>
      </main>

> Blockquote

<hr>
      <footer>
        <p>
          <a href="https://www.freecodecamp.org" target="_blank">Visit our website</a>
        </p>
        <p>123 Free Code Camp Drive</p>
      </footer>
    </div>
  </body>
</html>
/* file: styles.css */
body {
  background-image: url(https://cdn.freecodecamp.org/curriculum/css-cafe/beans.jpg);
  font-family: sans-serif;
  padding: 20px;
}

h1 {
  font-size: 40px;
}

h2 {
  font-size: 30px;
}

.established {
  font-style: italic;
}

h1, h2, p {
  text-align: center;
}

.menu {
  width: 80%;
  background-color: burlywood;
  margin-left: auto;
  margin-right: auto;
  padding: 20px;
  max-width: 500px;
}

hr {
  height: 2px;
  background-color: brown;
  border-color: brown;
}


/* User Editable Region */

h1, h2 {
  font-family: Impact, serif;
}

.item p {
  display: inline-block;
}

.flavor, .dessert {
  text-align: left;
  width: 75%;
}

.price {
  text-align: right;
  width: 25%
}
.item {
  margin-top: 5px;
  margin-bottom: 5px;
}

/* User Editable Region */

Your browser information:

User Agent is: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36 (KHTML, like Gecko) Chrome/110.0.0.0 Safari/537.36

Challenge: Learn Basic CSS by Building a Cafe Menu - Step 73

Link to the challenge:

I’ ve tried to do

.item {
  margin-top: 5px;
  margin-bottom: 5px;
}

but it keep saying

Your p elements nested in your .item elements should have a margin-top of 5px .

If you wish to target elements which are nested within other elements, you need to define the selector specifically.

EXAMPLE:

<div class="container">
  <img src="image-url">
  <p>Some text</p>
</div>

If you wish to target the <p> element above, you could do so like this:

.container p {
  margin: 5px
}

This will apply a 5px margin to all sides of the <p> element, but NOT to the <img> element or to any other <p> elements elsewhere in the code which are not inside a div with class ‘container’.

Your .item selector will target ALL elements which are nested inside the element with class ‘item’, not only <p> elements, hence you need to be more specific.

If you look at your CSS, there’s already a selector there which you can use for this challenge. You just need to add the required margin property and value.

thank you very much.