<!DOCTYPE html>
<html lang="ru">
<head>
<title>Испытание: строим сетку</title>
<meta charset="utf-8">
</head>
<body>
<div class="conteiner">
<div class="layout-positioner">
<div class="header">Header</div>
</div>
<div class="menu">Menu</div>
<div class="layout-positioner">
<div class="promo1">Promo 1</div>
<div class="promo2">Promo 2</div>
</div>
</div>
<div class="content">
<div class="layout-positioner">
<div class="left c1">Left</div>
<div class="main c1">Main</div>
<div class="right c1">Right</div>
</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;
}
.layout-positioner::after {
display: table;
content: "";
clear: both;
}
.layout-positioner {
width: 350px;
margin: 0 auto;
}
.conteiner {
background: #34495e;
padding: 10px 0;
}
.header {
background: #c0392b;
width: 340px;
padding: 5px;
display: block;
min-height: 25px;
}
.menu {
background: #3498DB;
margin: 10px 0;
padding: 5px 5px 5px 55px;
min-height: 25px;
display: block;
width: 390px;
}
.promo1 {
background: #c0392b;
float: left;
padding: 5px;
width: 160px;
margin-right: 10px;
min-height: 50px;
}
.promo2 {
background: #c0392b;
float: left;
padding: 5px;
width: 160px;
min-height: 50px;
}
.c1 {
background: #3498DB;
float: left;
margin-right: 10px;
width: 60px;
margin-top: 10px;
padding: 5px;
min-height: 100px;
}
.main {
width: 180px;
}
.right {
margin-right: 0;
}
.footer {
background: #34495e;
margin: 10px 0;
padding: 5px 5px 5px 55px;
min-height: 25px;
display: block;
width: 380px;
}
В целом хорошо написали. Но зачем задаете display: block; и без того блочным элементам?
Центровщик для меню и футера тоже нужен, только в данном случае он будет располагаться внутри блока, а не снаружи. Здесь мы центруем содержимое блока.
Спасибо