В общем, ниже разметка и стили, однако в стилях не работает свойство margin у класса .header .layout-column
То есть маргин как бы делается, но при этом эти 10 пикселей сверху приобретают белый фон, а не темно-синий. Что странно, учитывая, что .layout-column находится внутри обёртки, которая, в свою очередь, внутри .header, и должна вроде как растягиваться. Но может я что-то не знаю или не так понял?
Решилось всё обычным paddingом-топ для header’а, вместо маргина для layout-column, однако я так и не понял, почему не получалось маргин нормально применить?
При этом, у класса .promo .column всё прекрасно работает
(извините за оформление темы, я еще недостаточно хорош для этого)
<html lang="ru">
<head>
<title>Испытание: строим сетку</title>
<meta charset="utf-8">
</head>
<body>
<div class="header">
<div class="layout-positioner">
<div class="layout-column">Header</div>
</div>
</div>
<div class="menu">
<div class="layout-positioner">
<div class="layout-column">Menu</div>
</div>
</div>
<div class="promo">
<div class="layout-positioner">
<div class="column column1">Promo 1</div>
<div class="column column2">Promo 2</div>
</div>
</div>
<div class="features">
<div class="layout-positioner">
<div class="column column1">Left</div>
<div class="column column2">Main</div>
<div class="column column3">Right</div>
</div>
</div>
<div class="footer">
<div class="layout-positioner">
<div class="layout-column">Footer</div>
</div>
</div>
</body>
</html>
СТИЛИ
html,
body {
margin: 0;
padding: 0;
}
body {
width: 450px;
height: 335px;
font-family: "Arial", sans-serif;
font-size: 10px;
color: white;
}
/*
Используемые цвета:
#34495e – мокрый асфальт
#c0392b – красный
#3498DB – синий
*/
.layout-positioner {
width: 350px;
margin-left: auto;
margin-right: auto;
}
.layout-positioner::after {
content: "";
display: table;
clear: both;
}
.header {
background: #34495e;**
padding-top: 10px;** /*пришлось добавить паддинг-топ*/
}
.header .layout-column {
background: #c0392b;
min-height: 35px;
padding: 5px;
box-sizing: border-box;
margin-bottom: 10px; **раньше тут еще и маргин топ был **
}
.menu {
background: #3498DB;
}
.menu .layout-column {
min-height: 35px;
padding: 5px;
box-sizing: border-box;
}
.promo {
background: #34495e;
margin-bottom: 10px;
}
с блоком ниже всё работает отлично
.promo .column {
min-height: 60px;
background: #c0392b;
width: 170px;
padding: 5px;
box-sizing: border-box;
margin: 10px 0 10px 0;
}
.promo .column1 {
float: left;
}
.promo .column2 {
float: right;
}
.features {
margin-bottom: 10px;
}
.features .column {
background: #3498DB;
margin-right: 10px;
min-height: 110px;
padding: 5px;
box-sizing: border-box;
}
.features .column1 {
float: left;
width: 70px;
}
.features .column2 {
float: left;
width: 190px;
}
.features .column3 {
float: right;
width: 70px;
margin-right: 0px;
}
.footer {
background: #34495e;
}
.footer .layout-column {
min-height: 35px;
padding: 5px;
box-sizing: border-box;
}