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 trialMichael Leismeister
3,706 PointsWhat difference between Child Selectors? Or the proper use of Child Selectors...
Just wondering why a person would use > to target a element rather then just targeting them without >? Both ways seem to work the same.
/* Complete the challenge by writing CSS below */
.main-nav > li {
display:inline-block;
margin-left:20px;
}
.main-nav li {
display:inline-block;
margin-left:20px;
}
<!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 »</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 »</a></p>
</div>
</div>
</body>
</html>
1 Answer
Kevin Korte
28,149 PointsThey do seem to do the same, but as you get into bigger sites, the differences become important. Understand how ul > li
and ul li
differs is important.
A great article to explain it: https://css-tricks.com/child-and-sibling-selectors/
Mitchell Springer
2,576 PointsGreat article and very helpful in understanding the difference.
Ryan Decker
3,451 PointsRyan Decker
3,451 PointsIt's all about specificity. What if you had a nested list inside of .main-nav and only wanted to select the li elements that were direct children?
You are correct however in your example that both selectors are doing the same thing!