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.

This topic was automatically closed 182 days after the last reply. New replies are no longer allowed.