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 Responsive Layouts Responsive Patterns Flexbox

What was the point of the .nav rule in main.css?

I was trying to understand how the justify-content was being used in the code but completely commenting out the rule seems to not change anything in the navigation section.

1 Answer

Hey Kirt Perez,

I played around with the css a bit and found where this rule is taking affect. If you look at the media query for 640px, you'll notice the flex direction is changed from column to row. So, at 640px the justify-content: space-around rule and flex: 1 rule are being applied. To avoid these kind of issues, if I were coding this myself, I would have put those rules inside the media query. I'm not sure if there is a reason it was done this way, but the results are the same, if a bit more confusing.

Hope this helps. Happy coding!

This module 'Responsive Layouts' didn't really teach all too much about justify-content but I'm hoping that we go deeper into it in the 'Flexbox' module that's after this. Is the justify-content property only relevant when the main axis is horizontal, or in other words, only relevant to the row direction? I see how the .header and .nav class with their justify-content property is moving the navigation in some way at the 640px and 1030px mark.

Kirt Perez There are more in-depth lessons over layout coming in the techdegree, you'll dive into flexbox, grid, floats...lots of things. This is more introductory than anything. But, to your point, justify-content affects flex items along the main axis of the flex container. So if row is being used, the main axis spans the width of the container. If the flex direction is column, the main axis spans the height of the column. The flex property align-items affects positioning along the cross axis of the flex container. CSS Tricks has a fantastic guide to all things flex-box. It's pretty easy to use once you dig in a bit.

Best of luck!