JSFiddle - React, Tailwind, and code Playground

by Waleriy Belyaev

HTML

<div class="header">
            <div class="logo layout-positioner">
                <p>Header</p>
            </div>
            <div class="menu">
                <div class="layout-positioner"><p>Menu</p></div>
            </div>
            <div class="promo layout-positioner">
                <div class="column"><p>Promo 1</p></div>
                <div class="column"><p>Promo 2</p></div>
            </div>
        </div>
        <div class="content layout-positioner">
            <div class="column"><p>Left</p></div>
            <div class="column"><p>Main</p></div>
            <div class="column"><p>Right</p></div>
        </div>
        <div class="footer">
            <div class="layout-positioner"><p>Footer</p></div>
        </div>

CSS

html,
body {
    margin: 0;
    padding: 0;
}

body {
    width: 450px;
    height: 335px;
    font-family: "Arial", sans-serif;
    font-size: 10px;
    color: white;
}

/*
    Используемые цвета:
    #34495e – мокрый асфальт
    #c0392b – красный
    #3498DB – синий
*/

p{
    margin:0;
    padding:5px;
}
.column{
    float:left;
    margin-right:10px;
}

.header {
    margin-bottom: 10px;
    padding:10px 0 10px 0;
    background: #34495e;
}
.promo .column {
    min-height: 60px;
    background:#c0392b;
    width: 170px;
}
.promo .column:last-child{
    margin-right:0;    
}

.header .logo{
    background:#c0392b;
    min-height: 35px;
}
.header .menu{
    background:#3498DB;
    min-height: 35px;
    margin:10px 0 10px 0;
}

.content .column{
    float:left;
    width:70px;
    min-height: 110px;
    background:#3498DB;
}
.content .column:nth-child(2) {
    width: 190px;
}
.content .column:last-child{
    margin-right:0;    
}

.footer{
    background:#34495e;
    margin-top:10px;
    min-height: 35px;
}

.layout-positioner {
    width: 350px;
    margin: 0 auto;
}
.layout-positioner::after {
    display: table;
    content: "";
    clear: both;
}