Flexbox Grid
CSS
.wrapper{width:100%;max-width:125rem;padding:0 1.5rem;margin:0 auto;position:relative}
.wrapper::after{content:'';display:table;clear:both}
.row{margin:0 -1.5rem;*zoom:1}
.row::before{content:'';display:table}
.row::after{content:'';display:block;clear:both}
.row .col_1,.row .col_2,.row .col_3,.row .col_4,.row .col_5,.row .col_6,.row .col_7,.row .col_8,.row .col_9,.row .col_10,.row .col_11,.row .col_12{float:left;margin:0 1.5rem}
.row .col_1{width:-webkit-calc(100% / 12 - 3.01rem);width:-moz-calc(100% / 12 - 3.01rem);width:calc(100% / 12 - 3.01rem)}
.row .col_2{width:-webkit-calc(100% / 6 - 3.01rem);width:-moz-calc(100% / 6 - 3.01rem);width:calc(100% / 6 - 3.01rem)}
.row .col_3{width:-webkit-calc(100% / 4 - 3.01rem);width:-moz-calc(100% / 4 - 3.01rem);width:calc(100% / 4 - 3.01rem)}
.row .col_4{width:-webkit-calc(100% / 3 - 3.01rem);width:-moz-calc(100% / 3 - 3.01rem);width:calc(100% / 3 - 3.01rem)}
.row .col_5{width:-webkit-calc(100% / 2.4 - 3.01rem);width:-moz-calc(100% / 2.4 - 3.01rem);width:calc(100% / 2.4 - 3.01rem)}
.row .col_6{width:-webkit-calc(100% / 2 - 3.01rem);width:-moz-calc(100% / 2 - 3.01rem);width:calc(100% / 2 - 3.01rem)}
.row .col_7{width:-webkit-calc(100% / 1.714285714285714 - 3.01rem);width:-moz-calc(100% / 1.714285714285714 - 3.01rem);width:calc(100% / 1.714285714285714 - 3.01rem)}
.row .col_8{width:-webkit-calc(100% / 1.5 - 3.01rem);width:-moz-calc(100% / 1.5 - 3.01rem);width:calc(100% / 1.5 - 3.01rem)}
.row .col_9{width:-webkit-calc(100% / 1.3333333333 - 3.01rem);width:-moz-calc(100% / 1.3333333333 - 3.01rem);width:calc(100% / 1.3333333333 - 3.01rem)}
.row .col_10{width:-webkit-calc(100% / 1.2 - 3.01rem);width:-moz-calc(100% / 1.2 - 3.01rem);width:calc(100% / 1.2 - 3.01rem)}
.row .col_11{width:-webkit-calc(100% / 1.0909090909091 - 3.01rem);width:-moz-calc(100% / 1.0909090909091 - 3.01rem);width:calc(100% / 1.0909090909091 - 3.01rem)}
.row .col_12{width:-webkit-calc(100% / 1 - 3.01rem);width:-moz-calc(100% / 1 - 3.01rem);width:calc(100% / 1 - 3.01rem)}
SCSS
/* Vars */
$wrapWidth: 125rem;
$gutter: 1.5rem;
$gutter-: -1.5rem;
$zero: 0;
.wrapper {
width: 100%;
max-width: $wrapWidth;
padding: $zero $gutter;
margin: $zero auto;
position: relative;
&::after {
content: '';
display: table;
clear: both;
}
}
.row {
margin: $zero $gutter-;
*zoom: 1;
&::before {
content: '';
display: table;
}
&::after {
content: '';
display: block;
clear: both;
}
.col_1, .col_2, .col_3, .col_4, .col_5, .col_6, .col_7, .col_8, .col_9, .col_10, .col_11, .col_12 {
float: left;
margin: 0 1.5rem;
}
.col_1 {
width: calc(100% / 12 - 3.01rem);
}
.col_2 {
width: calc(100% / 6 - 3.01rem);
}
.col_3 {
width: calc(100% / 4 - 3.01rem);
}
.col_4 {
width: calc(100% / 3 - 3.01rem);
}
.col_5 {
width: calc(100% / 2.4 - 3.01rem);
}
.col_6 {
width: calc(100% / 2 - 3.01rem);
}
.col_7 {
width: calc(100% / 1.714285714285714 - 3.01rem);
}
.col_8 {
width: calc(100% / 1.5 - 3.01rem);
}
.col_9 {
width: calc(100% / 1.3333333333 - 3.01rem);
}
.col_10 {
width: calc(100% / 1.2 - 3.01rem);
}
.col_11 {
width: calc(100% / 1.0909090909091 - 3.01rem);
}
.col_12 {
width: calc(100% / 1 - 3.01rem);
}
}