JSFiddle - React, Tailwind, and code Playground
by Ian Hazzard
HTML
<header>
<div class="row center-xs">
<h1>Flexbox Grid</h1>
</div>
<div class="row center-xs">
<p>A grid system based on the <a href="http://flexboxgrid.com/">flexbox grid</a> by Kristofer Joseph.</p>
</div>
<section id="responsive">
<h2>Responsive</h2>
<p>Responsive modifiers enable specifying different column sizes, offsets, alignment and distribution at s, m & l viewport widths.</p>
<div class="row">
<div class="col-xs-12 col-sm-3 col-md-2 col-lg-1">
<div class="box-row"></div>
</div>
<div class="col-xs-6 col-sm-6 col-md-8 col-lg-10">
<div class="box-row"></div>
</div>
<div class="col-xs-6 col-sm-3 col-md-2 col-lg-1">
<div class="box-row"></div>
</div>
</div>
<div class="row">
<div class="col-xs-12 col-sm-3 col-md-2 col-lg-1">
<div class="box-row"></div>
</div>
<div class="col-xs-12 col-sm-9 col-md-10 col-lg-11">
<div class="box-row"></div>
</div>
</div>
<div class="row">
<div class="col-xs-10 col-sm-6 col-md-8 col-lg-10">
<div class="box-row"></div>
</div>
<div class="col-xs-2 col-sm-6 col-md-4 col-lg-2">
<div class="box-row"></div>
</div>
</div><pre><code><div class="row">
<div class="col-xs-12
col-sm-8
col-md-6
col-lg-4">
<div class="box">Responsive</div>
</div>
</div></code></pre></section>
<a name="fluid"></a>
<section class="page-section">
<br>
<h2>Fluid</h2>
<p>Percent based widths allow fluid resizing of columns and rows.</p>
<div class="row">
<div class="col-xs-12">
<div class="box-row"></div>
</div>
</div>
...
CSS
.row {
display: -webkit-box;
display: -webkit-flex;
display: -ms-flexbox;
display: flex;
flex-direction: row;
box-sizing: border-box;
margin-right: -0.5rem;
margin-left: -0.5rem;
-webkit-box-flex: 0;
-webkit-flex: 0 1 auto;
-ms-flex: 0 1 auto;
flex: 0 1 auto;
-webkit-box-orient: horizontal;
-webkit-box-direction: normal;
-webkit-flex-direction: row;
-ms-flex-direction: row;
-webkit-flex-wrap: wrap;
-ms-flex-wrap: wrap;
flex-wrap: wrap;
}
.row.start-s {
text-align: start;
-webkit-box-pack: start;
-webkit-justify-content: flex-start;
-ms-flex-pack: start;
justify-content: flex-start;
}
.row.center-s {
text-align: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
}
.row.end-s {
text-align: end;
-webkit-box-pack: end;
-webkit-justify-content: flex-end;
-ms-flex-pack: end;
justify-content: flex-end;
}
.row.top-s {
-webkit-box-align: start;
-webkit-align-items: flex-start;
-ms-flex-align: start;
-ms-grid-row-align: flex-start;
align-items: flex-start;
}
.row.middle-s {
-webkit-box-align: center;
-webkit-align-items: center;
-ms-flex-align: center;
-ms-grid-row-align: center;
align-items: center;
}
.row.bottom-s {
-webkit-box-align: end;
-webkit-align-items: flex-end;
-ms-flex-align: end;
-ms-grid-row-align: flex-end;
align-items: flex-end;
}
@media only screen and (min-width: 601px) {
.row.start-m {
text-align: start;
-webkit-box-pack: start;
-webkit-justify-content: flex-start;
-ms-flex-pack: start;
justify-content: flex-start;
}
.row.center-m {
text-align: center;
-webkit-box-pack: center;
-webkit-justify-content: center;
-ms-flex-pack: center;
justify-content: center;
}
.row.end-m {
text-align:...