HTML
<html lang="ru">
<head>
<title>Испытание: строим сетку</title>
<meta charset="utf-8">
</head>
<body>
<div class="wrapper">
<div class="header centering"><p>Header</p></div>
<div class="menu centering"><p>Menu</p></div>
<div class="promo centering clearfix">
<div class="promo-1"><p>Promo 1</p></div>
<div class="promo-2"><p>Promo 2</p></div>
</div>
<div class="maining centering clearfix">
<div class="left"><p>Left</p></div>
<div class="main"><p>Main</p></div>
<div class="right"><p>Right</p></div>
</div>
<div class="footer centering clearfix"><p>Footer</p></div>
</div>
</body>
</html>
CSS
html,
body {
margin: 0;
padding: 0;
}
body {
width: 450px;
height: 335px;
font-family: "Arial", sans-serif;
font-size: 10px;
color: white;
}
.wrapper {
background: #34495e;
width:450px;
height: 150px;
padding: 10px 0px 10px 0px;
}
.centering {
width: 350px;
margin: 0 auto;
}
.clearfix::after {
content: "";
clear: both;
display: table;
}
.header {
background: #c0392b;
min-height: 35px;
}
.menu {
background: #3498DB;
min-height: 35px;
margin-top: 10px;
width: auto;
}
.promo .promo-1 {
float: left;
width: 170px;
background: #c0392b;
min-height: 60px;
margin-top: 10px;
box-sizing: border-box;
}
.promo .promo-2 {
float: right;
width: 170px;
background: #c0392b;
min-height: 60px;
margin-top: 10px;
box-sizing: border-box;
}
.maining .left {
background: #3498DB;
min-height: 110px;
margin-top: 20px;
margin-right: 10px;
width: 70px;
float: left;
box-sizing: border-box;
}
.maining .main {
background: #3498DB;
min-height: 110px;
margin-top: 20px;
margin-right: 10px;
width: 190px;
box-sizing: border-box;
float: left;
}
.maining .right {
background: #3498DB;
min-height: 110px;
margin-top: 20px;
width: 70px;
float: left;
box-sizing: border-box;
}
.footer {
background: #34495e;
min-height:35px;
margin-top: 10px;
width: auto;
}
p {
margin: 0;
padding: 5px;
}
.menu p {
padding: 5px 0px 0px 55px;
}
.footer p {
padding: 5px 0px 0px 55px;
}
- Что сделано не правильно ?
- Что можно пофиксить ?
- До сих пор не совсем понимаю как работает класс clearfix в связке с after
.clearfix::after { - что именно делает after ?
content: “”; - что именно дает данное свойство ?
clear: both;
display: table; - я правильно понимаю ? мы создаем обрамление для данной области ? - box-sizing: border-box; - в отличии от обычного определения области где сладываеться width+height+margin+padding, в случае с border-box, width+height формируют область в которой применение padding не расширит ее (область) ? я правильно понимаю ?
Спасибо за советы и ответы.