Welcome to the Treehouse Community

The Treehouse Community is a meeting place for developers, designers, and programmers of all backgrounds and skill levels to get support. Collaborate here on code errors or bugs that you need feedback on, or asking for an extra set of eyes on your latest project. Join thousands of Treehouse students and alumni in the community today. (Note: Only Treehouse students can comment or ask questions, but non-students are welcome to browse our conversations.)

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and a supportive community. Start your free trial today.

CSS CSS Selectors Selectors - Beyond the Basics Combinators Challenge

Sarah McHarg
Sarah McHarg
3,610 Points

CSS Selectors Challenge Task 2 of 2

It looks like we need to decrease the space between h2 elements and the paragraph that immediately follows. Create a new selector that targets p elements that are adjacent siblings of an h2. Then, set the top margin to .5em.

Bummer! Are you setting the correct 'margin-top' value?

It says .5em on my stylesheet, why won't it accept?

style.css
/* Complete the challenge by writing CSS below */

.main-nav > li {
  display: inline-block;
  margin-left: 20px;
}


.h2 + p {
  margin-top: .5em;
}
index.html
<!DOCTYPE html>
<html>
<head>
    <title>Selectors</title>
  <meta name="viewport" content="width=device-width, initial-scale=1">
  <link href='http://fonts.googleapis.com/css?family=Nunito:400,300' rel='stylesheet' type='text/css'>
  <link rel="stylesheet" href="base.css">
  <link rel="stylesheet" href="style.css">
</head>
<body>
  <header class="main-header">
    <h1>My Blog</h1>
    <ul class="main-nav">
      <li><a href="#">About Me</a></li>
      <li><a href="#">My Work</a></li>
      <li><a href="#">Get In Touch</a></li>
    </ul>
  </header>
    <div class="main">
        <p>Lorem ipsum dolor sit amet, consectetur adipiscing elit. Ut et feugiat libero. Cras ut fermentum nisi. Nullam mattis, ipsum commodo laoreet volutpat, augue eros ornare lorem, eu interdum leo massa a nibh.</p>
        <p>In vel semper lorem. Pellentesque in quam pulvinar, fringilla justo ac, accumsan ante. Etiam in malesuada lacus.</p>

        <div class="post">
            <h2>Post Heading</h2>
            <p>Nulla eu vestibulum mauris. Vestibulum ante ipsum primis in faucibus orci luctus et ultrices posuere cubilia Curae; Integer blandit ex velit, vitae consequat quam viverra at... <a href="#">read more &raquo;</a></p>
        </div>
        <div class="post">
            <h2>Post Heading</h2>
            <p>Aliquam cursus tempor molestie. Phasellus nec mattis elit. Sed fringilla laoreet magna, sodales vulputate leo auctor eu. Cras scelerisque laoreet faucibus. Proin cursus, metus... <a href="#">read more &raquo;</a></p>
        </div>
    </div>
</body>
</html>
Eugenia Lysenko
Eugenia Lysenko
1,910 Points

You put a point before "h2" :)

Sarah McHarg
Sarah McHarg
3,610 Points

Yes, you are right. The punctuation always trips me up! Thank you :-)

2 Answers

Steven Parker
Steven Parker
217,573 Points

The instructions ask for a "selector that targets p elements that are adjacent siblings of an h2".

Both "p" and "h2" are tag names, so neither one should have a period in front. Periods are for class names.

I am also having a problem with this question.

/* Complete the challenge by writing CSS below */
.main-nav > li {
  display: inline-block;
  margin-left: 20px;
};

h2 + p {
  margin-top: .5em;
}

as far as I know this is correct? yet it still says "Bummer: Are you setting the correct 'margin-top' value?"...

Steven Parker
Steven Parker
217,573 Points

In future, always post a fresh new question instead of asking one in an "answer".

But in this case, the issue is that semicolons do not go between rules (just between property-value sets inside a rule).

Noted! Yes I’m still in JavaScript mode haha, Thanks