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 CSS Layout Techniques Grid Layout Creating the Grid Container

grid questions

Hello!

1) My .main-logo or h1 in the header and my lis have the same padding:10px 20px; but when I give the main-logo a grid-2, the width becomes incredibly long, much much longerer than when I give it grid-1. Why does the h1 or main-logo appear so wide?

2) When you narrow the viewport just a little, you will see the links collapse, why do they collapse?

3) When you narrow the viewport to the narrowest range, you will see the lis stack on each other with no space in btween. I gave the lis a margin-top:12px; so why doesn't this rule work?

<!DOCTYPE html>
<html>
<head>
    <meta name="viewport" content="width=device-width">
    <link rel="stylesheet" href="css/normalize.css">
    <style>
    img{
    width:100%;

    }
    .grid-container{
    padding: 0 10px;
    margin:0 auto;

    }
    @media(min-width:768px)
    {
     .grid-container > [class^="grid-"]{
     padding:0 10px;
     float:left;
     min-height:1px;
     margin-left:2%;

     }
     .grid-container > [class^="grid-"]:first-child{
     margin-left:0;
     }
     .grid-container > [class^="grid-"]:last-child{
     float:right;

     }
     .grid-1{
     width:6.5%;

     }
     .grid-2{
     width:15%;

     }
     .grid-2{
     width:23.5%;

     }
     .grid-4 {
        width: 32%;
    }
    .grid-5 {
        width: 40.5%;
    }
    .grid-6 {
        width: 49%;
    }
    .grid-7 {
        width: 57.5%;
    }
    .grid-8 {
        width: 66%;
    }
    .grid-9 {
        width: 74.5%;
    }
    .grid-10 {
        width: 83%;
    }
    .grid-11 {
        width: 91.5%;
    }
    .grid-12 {
        width: 100%;
    }
   .group::after{
   content:"";
   display:table;
   clear:both;

   }




    }

    </style>
    <style>
        *{
        box-sizing:border-box;


        }
        body{
        font:1.1em/1.5em sans-serif;
        color:#222;
        background:#edeff0;

        }
        .main-header{
        padding: 10px;
        background-color: #384047; 
        }
        .main-logo{
        margin-top:0;
        margin-bottom:0;
        font-size:1.5em;
        }
        .main-logo a,
        .main-nav a{
        display:block;
        padding:10px 20px;
        text-decoration:none;
        color:white;
        text-align:center;
        border-radius:5px;

        }
        .main-logo a{
        background-color: #5fcf80;

        }
        .main-nav a{
        background-color: #3f8abf; 

        }

        .main-footer{
        padding:10px;
        text-align:center;
        background-color: #b7c0c7;

        }
        @media(min-width:768px){
        .main-header{
        position:fixed;
        top:0;
        width:100%;


        }
        body{
        padding-top:120px;

        }

        .main-nav li{
        display:inline-block;

        }
            .main-banner {
        background: #dfe2e4;
        text-align: center;
        padding: 50px 15px;
        margin-bottom: 20px;
        }


        .feat-img {
        width: 45%;
        float: left;
        margin: 5px 20px 10px 0;
        }
        @media(max-width:767px)  {
        .main-nav li {
        margin-top: 12px;
        }


        }
    </style>

</head>

<body>
    <header class="main-header">
       <div class="grid-container">
        <h1 class="grid-2 main-logo"><a href="#">Logo</a></h1>
        <ul class=" grid-7 main-nav">
            <li><a href="#">Link 1</a></li>
            <li><a href="#">Link 2</a></li>
            <li><a href="#">Link 3</a></li>
            <li><a href="#">Link 4</a></li>
        </ul>
      </div>        
    </header>
    <div class="main-banner">
        <h1>This is the main banner</h1>
        <p>Andouille pork chop pancetta drumstick ground round beef ribs swine brisket ham.</p>
    </div>
    <div class="grid-container group">
        <div class="grid-8">
            <h2>Primary Content </h2>
            <img class="feat-img" src="http://lorempixel.com/400/300" />
            <p>Bacon ipsum dolor sit amet chicken pork ground round brisket corned beef ball tip shank tail salami filet mignon ham hock pork belly venison shankle. Pig kielbasa drumstick sausage pork chop boudin. Chicken t-bone salami pork chop, beef ribs kevin ham tri-tip beef venison biltong brisket.</p>
            <p>Venison strip steak meatball chicken, brisket prosciutto sirloin. Capicola drumstick brisket tri-tip salami. Chicken beef jerky, tail turkey prosciutto cow ham sirloin boudin tenderloin.</p>

        </div>
        <div class="grid-4">
            <h3> Secondary Content </h3>
            <p>Strip steak tenderloin kevin swine meatloaf capicola, doner beef turducken pancetta corned beef pork loin shoulder.</p>
                <hr>
                <p>Pork filet mignon leberkas, tail swine venison pancetta turkey shoulder brisket chalkers likes hamburgers.</p>
                <hr>
                <p>Meatball pastrami shoulder, brisket ribeye spare ribs turkey tongue strip steak t-bone.</p>

        </div>
    </div>
    <div class="main-footer">
        <p>&copy;2014 Example Layout</p>
    </div>
</body>
</html>

2 Answers

Tom Mertz
Tom Mertz
15,254 Points

In your CSS you have two grid-2 classes. Try changing the second one (with width: 23.5%) to

.grid-3 {
   width: 23.5%;
}

Good luck!

Thank you Tom!