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

william french
PLUS
william french
Courses Plus Student 672 Points

css media query

what is wrong with this

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

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

}

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;
  }

}

4 Answers

Hugo Paz
Hugo Paz
15,622 Points

Hi William,

You need to target every fourth list item (4, 8, 12 ...). Your code only affects the fourth item (4).

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

CSS will substitute n with 1, 2, 3... so it means 4*1, 4*2 and so on

Rachel Bird
Rachel Bird
11,968 Points

Try li:nth-child(4n) instead of li:nth-child(4).

Rachel Bird
Rachel Bird
11,968 Points

Ah! Hugo answered while I was typing in my response.

Vitor Freitas
Vitor Freitas
3,579 Points

To select the every fourth element you need to use the 'n' . In the following example I select all the multiple of 4. You can read more about :nth-child here and here

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

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

}