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 &amp; 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>&lt;div class="row">
    &lt;div class="col-xs-12
                col-sm-8
                col-md-6
                col-lg-4">
        &lt;div class="box">Responsive&lt;/div>
    &lt;/div>
&lt;/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:...