С этим разобрался. Хотя не совсем понимаю как, но теперь понимаю как надо делать.
Я все сделал, оцените чистоту, пожалуйста.
HTML
<html lang="ru">
<head>
<title>Испытание: строим сетку</title>
<meta charset="utf-8">
</head>
<body>
<header class="clearfix">
<div class="top">
Header
</div>
<div class="menu">
Menu
</div>
<div class="layout-positioner clearfix">
<div class="promo1">
Promo 1
</div>
<div class="promo2">
Promo 2
</div>
</div>
</header>
<div class="middle">
<div class="layout-positioner clearfix">
<div class="column left">
Left
</div>
<div class="column main">
Main
</div>
<div class="column right">
Right
</div>
</div>
</div>
<footer>
Footer
</footer>
</body>
CSS
html,
body {
margin: 0;
padding: 0;
}
body {
width: 450px;
height: 335px;
font-family: “Arial”, sans-serif;
font-size: 10px;
color: white;
}
header {
padding-top: 10px;
padding-bottom: 10px;
background-color: #34495e;
}
.top {
width: 345px;
height: 30px;
margin-right: auto;
margin-left: auto;
padding: 5px 0px 0px 5px;
background-color: #c0392b;
}
.menu {
width: 87.8%;
height: 30px;
margin: 10px 0px 10px 0px;
padding: 5px 0px 0px 55px;
background-color: #3498DB;
}
.promo1 {
float: left;
width: 165px;
height: 55px;
margin-right: 10px;
padding: 5px 0px 0px 5px;
background-color: #c0392b;
}
.promo2 {
float: left;
height: 55px;
width: 165px;
padding: 5px 0px 0px 5px;
background-color: #c0392b;
}
.middle{
margin: 10px 0px 10px 0px;
}
.column {
float: left;
margin-right: 10px;
padding: 5px 0px 0px 5px;
background-color: #3498DB;
}
.left {
height: 105px;
width: 65px;
}
.main {
width: 185px;
height: 105px;
}
.right {
width: 65px;
height: 105px;
margin-right: 0px;
}
footer {
height: 30px;
margin-top: 10px;
padding: 5px 0px 0px 55px;
background-color: #34495e;
clear: both;
}
.clearfix::after {
content: “”;
display: table;
clear: both;
}
.layout-positioner {
width: 350px;
margin: 0 auto;
}