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

CSS How to Make a Website Responsive Web Design and Testing Refactor the Layout

james galligan
james galligan
1,733 Points

Clear the Fourth Item nth child help?

IS there anything wrong with this code its not working? I am currently taking the code challenge and cannot for the life of me figure this out.

css/main.css
a {
  text-decoration: none;
}

#wrapper {
  max-width: 940px;
  margin: 0 auto;
}

#logo {
  text-align: center;
  margin: 0;
}

h1, h2 {
  color: #fff;
}

nav a {
  color: #fff;
}

nav a:hover {
  color: #32673f;
}

h1 {
  font-family: โ€˜Changa Oneโ€™, sans-serif;
  font-size: 1.75em;
  font-weight: normal;
}

img {
  max-width: 100%;
}

#gallery {
  margin: 0;
  padding: 0;
  list-style: none;
}

#gallery li {
  float: left;
  width: 45%;
  margin: 2.5%;
  background-color: #f5f5f5;
  color: #bdc3c7;
}

nav ul {
  list-style: none;
  margin: 0 10px;
  padding: 0;
}

nav li {
  display: inline-block;
}

nav a {
  font-weight: 800;
  padding: 15px 10px;
}

.profile-photo {
  display: block;
  margin: 0 auto 30px;
      max-width: 150px;
  border-radius: 100%;
}

.contact-info {
  list-style: none;
  padding: 0;
  margin: 0;
  font-size: 0.9em;
}

.contact-info a {
  display: block;
  min-height: 20px;
  background-repeat: no-repeat;
  background-size: 20px 20px;
  padding: 0 0 0 30px;
  margin: 0 0 10px;
}

@media screen and (min-width: 480px) {
#gallery li {
    width: 28.3333%;
  }
  #gallery li:nth-child(4) {
    clear: left;
  }
}
james galligan
james galligan
1,733 Points

sorry this bit of code.

@media screen and (min-width: 480px) {

gallery li {

width: 28.3333%;

} #gallery li:nth-child(4) { clear: left; } }

2 Answers

Blaize Pennington
Blaize Pennington
13,878 Points

Its about the wording. The question asks you to "Inside the media query, clear the left side of every 4th list item in the gallery." So the way you wrote it:

#gallery li:nth-child(4) {
    clear: left;
}

This will select only the 4th item in the list, but wil not select the 8th, 12th, 16th etc which is what the question is asking you to do. So to do this you add an n to the nth child.

#gallery li:nth-child(4n) {
   clear: left;
}

The n means essentially to multiply by every number. So:

  • 4x0 = 0
  • 4x1 = 4
  • 4x2 =8
  • 4x3 = 12

So the css is saying select all of these forever.

You can also alter this by adding or subtracting at the end.

4n + 1 would select

  • (4 x 0) + 1 = 1
  • (4 x 1) + 1 = 5
  • (4 x 2) + 1 = 9

Edit: Formatting

james galligan
james galligan
1,733 Points

Thank you for your help !

Stephen Lee
Stephen Lee
22,905 Points

Brilliant. Thank you.

Add this instead,

#gallery li:nth-child(4n) {
    clear: left;
  }