Welcome to the Treehouse Community

Want to collaborate on code errors? Have bugs you need feedback on? Looking for an extra set of eyes on your latest project? Get support with fellow developers, designers, and programmers of all backgrounds and skill levels here with the Treehouse Community! While you're at it, check out some resources Treehouse students have shared here.

Looking to learn something new?

Treehouse offers a seven day free trial for new students. Get access to thousands of hours of content and join thousands of Treehouse students and alumni in the community today.

Start your free trial

JavaScript CSS Selectors Quickstart Pseudo-classes and Combinators Combinators Challenge

Create a selector that targets a <div> that is an adjacent sibling of a <div>. Set a top margin of 15px.

I wrote: h2 + div { margin-top: 15px; }

I did an adjacent sibling , but it is wrong ?

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

header img{
 margin: 20px;
}

.main-content p{
  font-weight: bold;     /*文字粗細*/
}

h2 + div {
margin-top: 15px; 
}
index.html
<!DOCTYPE html>
<html>
  <head>
    <title>Combinators Challenge</title>
    <link rel="stylesheet" href="page.css">
    <link rel="stylesheet" href="style.css">
  </head>
  <body>
    <header>
      <h1>Lake Tahoe, California</h1>
      <img src="mtn-landscape.jpg" alt="foggy mountains">
    </header>
    <div class="main-content">
      <h2>Journey Through the Sierra Nevada Mountains</h2>
      <p>Lake Tahoe is one of the most breathtaking attractions located in California. It's home to a number of ski resorts, summer outdoor recreation, and tourist attractions. Snow and skiing are a significant part of the area's reputation.</p>
    </div>
    <div>
      <h2>From Tents to Resorts</h2>
      <span>Lake Tahoe is full of wonderful places to stay.
        <span>Sleep in the outdoors in a tent, or relax at a resort.</span>
      </span>
    </div> 
  </body>
</html>

2 Answers

Jonathan Grieve
MOD
Jonathan Grieve
Treehouse Moderator 91,252 Points

You used the right operator but you need to give 2 div elements as your selector to tell CSS that it needs to look for the 2 div elements in the same place in the document tree. Replace the h2 in your selector with another div.

Javier Fasciano
Javier Fasciano
11,499 Points

The adjacent sibling combinator (+) separates two selectors and matches the second element only if it immediately follows the first element, and both are children of the same parent element.

so it will be div + div { margin-top: 15px; }