0

I've got a grid of images that I'd like to display as in the image here:

Grid of Images - how it should be laid out

Unfortunately the bottom row are pushing down out of alignment.

I'm adapting Graham Miller's Responsive Grid System, which is wonderful. Here's the code I have so far:

CSS:

/*  SECTIONS  */
    .section {
        clear: both;
        padding: 0px;
        margin: 0px;
    }

    /*  COLUMN SETUP  */
    .col {
        display: block;
        float:left;
        margin: 1% 0 1% 1.6%;
    }
    .col:first-child { margin-left: 0; }

    /*  GROUPING  */
    .group:before,
    .group:after { content:""; display:table; }
    .group:after { clear:both;}
    .group { zoom:1; /* For IE 6/7 */ }


    /*  GRID OF SIX  */
    .span_6_of_6 {
        width: 100%;
    }

    .span_5_of_6 {
        width: 83.06%;
    }

    .span_4_of_6 {
        width: 66.13%;
    }

    .span_3_of_6 {
        width: 49.2%;
    }

    .span_2_of_6 {
        width: 32.26%;
        height: 350px;
    }

    .span_1_of_6 {
        width: 15.33%;
    }

    img {
        width: 100%;
        height: auto;
    }
    /*  GO FULL WIDTH BELOW 480 PIXELS */
    @media only screen and (max-width: 480px) {
        .col {  margin: 1% 0 1% 0%; }
        .span_1_of_6, .span_2_of_6, .span_3_of_6, .span_4_of_6, .span_5_of_6, .span_6_of_6 { width: 100%; }
    }

HTML:

<div class="section group">
    <div class="col span_2_of_6"><img src="images/slices02.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices02.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices03.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices04.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices05.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices06.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices07.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices08.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices09.png" alt=""/></div>
</div>
<div class="section group">
    <div class="col span_1_of_6"><img src="images/slices04.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices05.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices06.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices07.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices08.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices09.png" alt=""/></div>
</div>
<div class="section group">
    <div class="col span_1_of_6"><img src="images/slices02.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices03.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices04.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices05.png" alt=""/></div>
    <div class="col span_2_of_6"><img src="images/slices02.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices06.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices07.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices08.png" alt=""/></div>
    <div class="col span_1_of_6"><img src="images/slices09.png" alt=""/></div>
</div>

I've tried several things, including floating the bottom row of five images to the left, resizing the images slightly, and other desperate measures, but all to no avail.

Does anyone know how this issue can be solved?

Ralphatron
  • 63
  • 1
  • 8

1 Answers1

0

Implement both a six column system and a four column system, once that's done, you can do the following:

<div class="section group"> <!-- First row -->
    <div class="col span_2_of_6"> <!-- left side of row -->
        <div class="col span_6_of_6"> <!-- this is for margin consistency -->
            <img src="" alt=""> 
        </div>
    </div>

    <div class="col span_4_of_6"> <!-- right side of row -->
        <div class="col span_1_of_4"><img src="" alt=""></div>
        <div class="col span_1_of_4"><img src="" alt=""></div>
        <div class="col span_1_of_4"><img src="" alt=""></div>
        <div class="col span_1_of_4"><img src="" alt=""></div>

        <div class="col span_1_of_4"><img src="" alt=""></div>
        <div class="col span_1_of_4"><img src="" alt=""></div>
        <div class="col span_1_of_4"><img src="" alt=""></div>
        <div class="col span_1_of_4"><img src="" alt=""></div>
    </div>
</div>

<div class="section group"> <!-- second row -->
    <div class="col span_6_of_6"> <!-- full row -->
        <div class="col span_1_of_6"><img src="" alt=""></div>
        <div class="col span_1_of_6"><img src="" alt=""></div>
        <div class="col span_1_of_6"><img src="" alt=""></div>
        <div class="col span_1_of_6"><img src="" alt=""></div>
        <div class="col span_1_of_6"><img src="" alt=""></div>
        <div class="col span_1_of_6"><img src="" alt=""></div>
    </div>
</div>

<div class="section group"> <!-- Third row -->
    <div class="col span_4_of_6"> <!-- left side of row -->
        <div class="col span_1_of_4"><img src="" alt=""></div>
        <div class="col span_1_of_4"><img src="" alt=""></div>
        <div class="col span_1_of_4"><img src="" alt=""></div>
        <div class="col span_1_of_4"><img src="" alt=""></div>

        <div class="col span_1_of_4"><img src="" alt=""></div>
        <div class="col span_1_of_4"><img src="" alt=""></div>
        <div class="col span_1_of_4"><img src="" alt=""></div>
        <div class="col span_1_of_4"><img src="" alt=""></div>
    </div>

    <div class="col span_2_of_6"> <!-- right side of row -->
        <div class="col span_6_of_6"> <!-- this is for margin consistency -->
            <img src="" alt=""> 
        </div>
    </div>
</div>

You may want to add a few custom classes to have more control over your margins.

Brian H.
  • 854
  • 8
  • 16
  • Thanks Brian. I can see the logic in what you're suggesting. I think I must be missing something though, as it doesn't render as expected at all. I've implemented your suggestion under my own on the page. You can see that there's just no grid at all - just a vertical listing. – Ralphatron Nov 22 '17 at 16:15
  • oops, forgot the col class – Brian H. Nov 22 '17 at 16:27
  • That's more the ticket, but rows 6 to 9 and 20 to 23 are kicked out of line. Any idea what's causing that? – Ralphatron Nov 22 '17 at 16:45