27 испытание 100%, хорошее ли решение? перфекционизм не дает покоя.

<!DOCTYPE html>
<html lang="ru">
    <head>
        <title>Испытание: строим сетку</title>
        <meta charset="utf-8">
    </head>
    <body>
        <div class="container1">
        <div class="header">Header</div>
        <div class="menu">Menu</div>
        <div class="promo1">Promo 1</div>
        <div class="promo2">Promo 2</div>
        </div>
        <div class="container2">
        <div class="left">Left</div>
        <div class="main">Main</div>
        <div class=right>Right</div>
        </div>
        <div class="footer">Footer</div>
    </body>
</html>

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

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

.container1 {
background-color: #34495e;
width: 450px;
height: 170px;
}

.header {
background-color: #c0392b;
margin: 10px 10px 10px 50px;
width: 340px;
height: 25px;
padding: 5px;
float: left;

}

.menu {
background-color: #3498DB;
height: 30px;
padding-left: 55px;
padding-top: 5px;
float: left;
width: 395px;

}

.promo1 {
background-color: #c0392b;
width: 160px;
height: 50px;
float: left;
margin-left: 50px;
margin-top: 10px;
padding: 5px;
}

.promo2 {
background-color: #c0392b;
width: 160px;
height: 50px;
float: right;
margin-right: 50px;
margin-top: 10px;
padding: 5px;
}

.container2 {
margin-top: 10px;
}

.left {
background-color: #3498DB;
float: left;
padding: 5px;
width: 60px;
height: 100px;
margin-left: 50px;
}

.main {
background-color: #3498DB;
float: left;
padding: 5px;
width: 180px;
height: 100px;
margin-left: 10px;

}

.right {
background-color: #3498DB;
float: right;
padding: 5px;
width: 60px;
height: 100px;
margin-right: 50px;
}

.footer {
margin-top: 10px;
background-color: #34495e;
float: left;
width: 400px;
height: 40px;
padding-left: 55px;
padding-top: 5px;
}

HTML- код не видно. Посмотрите другие варианты кода по темам.