Свойство margin добавляет пространство между элементами.
Это сокращенная форма записи для следующих свойств:
- margin-top
- margin-bottom
- margin-left
- margin-right
Можно использовать свойство margin одновременно для всех сторон. Для верхней стороны используется свойство margin-top, для нижней стороны - margin-bottom, для левой - margin-left, а margin-right используется для правой стороны.
Свойство margin может быть указано, используя одно, две, три или четыре значения:
- margin : 25px 10px 15px 20px. Эта запись означает, что поле сверху должно быть 25px, справа - 10px, снизу - 15px и слева - 20px.
- margin: 15px 10px 20px. Эта запись означает, что поле сверху должно быть 15px, справа и слева - 10px, а снизу - 20px.
- margin: 15px 10px. Эта запись означает, что поля сверху и снизу равны 15px, справа и слева - 10px.
- Если поле имеет только одно значение, оно применяется для всех сторон.
Отрицательные значение допустимы.
Свойства margin-top и margin-bottom не имеют эффекта на строчных элементах, подобно <span> или <code>
Значение по умолчанию | 0 |
Применяется | Ко всем элементам. |
Наследуется | Нет |
Анимируемое | Да. Рамка анимируема. |
Версия | CSS1 |
DOM синтаксис | Object.style.margin = "20px 10px"; |
Синтаксис
margin: length | auto | initial | inherit;
Пример
<!DOCTYPE html>
<html>
<head>
<title>Заголовок документа</title>
<style>
p {
background-color: #1c87c9;
color: #fff;
margin: 25px 10px 15px 20px;
}
</style>
</head>
<body>
<h2>Пример свойства margin</h2>
<p>Параграф с применением свойств background-color, color и margin.</p>
</body>
</html>
Пример, где задано значение равное 10% для всех сторон:
Пример
<!DOCTYPE html>
<html>
<head>
<title>Заголовок документа</title>
<style>
p.example {
margin: 10%;
}
</style>
</head>
<body>
<h2>Пример свойства margin</h2>
<p>Lorem Ipsum - это текст-"рыба", часто используемый в печати и вэб-дизайне. </p>
<p class="example">Lorem Ipsum - это текст-"рыба", часто используемый в печати и вэб-дизайне. </p>
<p>Lorem Ipsum - это текст-"рыба", часто используемый в печати и вэб-дизайне. </p>
</body>
</html>
Рассмотрим пример, где поля элемента указаны в единице измерения "em":
Пример
<!DOCTYPE html>
<html>
<head>
<title>Заголовок документа</title>
<style>
p.example {
margin: 4em;
}
</style>
</head>
<body>
<h2>Пример свойства margin</h2>
<p>Lorem Ipsum - это текст-"рыба", часто используемый в печати и вэб-дизайне.</p>
<p class="example">Lorem Ipsum - это текст-"рыба", часто используемый в печати и вэб-дизайне.</p>
<p>Lorem Ipsum - это текст-"рыба", часто используемый в печати и вэб-дизайне.</p>
</body>
</html>
В следующем примере можно увидеть разницу между свойствами margin, padding и border:
Пример
<!DOCTYPE html>
<html>
<head>
<title>Заголовок документа</title>
<style>
div {
background-color: #eee;
width: 200px;
border: 20px solid #8ebf42;
padding: 30px;
margin: 55px;
}
</style>
</head>
<body>
<h2>Пример свойства margin</h2>
<div>Lorem Ipsum - это текст-"рыба", часто используемый в печати и вэб-дизайне. Lorem Ipsum является стандартной "рыбой" для текстов на латинице с начала XVI века.</div>
</body>
</html>
Значения
Значение | Описание |
---|---|
auto | Устанавливает поля. Значение по умолчанию. |
length | Устанавливает поля в единицах измерения (px, pt, cm и т. д.). Значение по умолчанию - 0. |
% | Устанавливает поля элемента в процентах. |
initial | Устанавливает свойство в значение по умолчанию. |
inherit | Значение элемента наследуется от родительского элемента.te. |
Поддержка браузера
1.0+ | 1.0+ | 1.0+ | 3.5+ |
Практикуйте свои знания
Какие значения CSS свойства 'margin' способны изменить положение HTML-элементов?
Правильный!
Неправильно!