If you want to target every odd item in the order of your items, you can utilize the nth-child(odd)
selector.
Without providing a specific code example, I've created a structure that I believe suits such a design.
Check out this example I quickly put together: http://codepen.io/michaelpumo/pen/OMgEKp
In the CodePen demo, Jade is used for HTML and SCSS is utilized for CSS. While I recommend using those languages, if you need the compiled code, it's included below.
HTML
<div class="grid">
<div class="grid__left">
<div class="grid__hero"></div>
<div class="grid__item"></div>
<div class="grid__item"></div>
</div>
<div class="grid__right">
<div class="grid__sidebar"></div>
</div>
</div>
CSS
* {
box-sizing: border-box;
}
body {
padding-top: 10px;
}
.grid {
width: 600px;
overflow: hidden;
margin: 0 auto;
}
.grid__left, .grid__right {
float: left;
}
.grid__left {
width: 400px;
}
.grid__right {
width: 200px;
padding-left: 10px;
}
.grid__hero, .grid__item, .grid__sidebar {
background: #000;
}
.grid__hero {
width: 100%;
height: 200px;
margin: 0 0 10px 0;
}
.grid__hero {
width: 100%;
height: 200px;
margin: 0 0 10px 0;
}
.grid__item {
float: left;
clear: none;
width: 195px;
height: 200px;
margin: 0 10px 10px 0;
}
.grid__item:nth-child(odd) {
margin-right: 0;
}
.grid__sidebar {
width: 100%;
height: 410px;
}
I hope this explanation clarifies things. The crucial element lies within the .grid__item
divs, where the right margin is removed for every odd item, creating the desired effect.
If you're looking for a grid system, there are various options available, with Bootstrap being a popular choice. I highly recommend using one of them: http://getbootstrap.com
Personally, I prefer using a SCSS-based grid like Neat: