css властивість margin
Властивість margin
- встановлює зовнішні відступи (поля) навколо елемента. Таким відступом є простір від грані поточного елемента до внутрішнього краю його батьківського елемента.
Це універсальна властивість і її поведінка залежить від кількості значень. Поведінку властивості margin при різній кількості значень наведено нижче:
Кількість значень | Поведінка властивості |
---|---|
1 | Поля будуть встановлені для всіх сторін |
2 | Перше значення встановить відступ зверху та знизу, друге - відступи праворуч та ліворуч. |
3 | Перше значення встановлює відступ зверху, друге значення одночасно,встановить ліве та праве поле, третє значення - відступ знизу. |
4 | Послідовно встановить відступи для верхнього, правого, нижнього та лівого країв. |
margin
- це властивість, яка приймає до чотирьох значень:
.box {
margin: <margin-top> || <margin-right> || <margin-bottom> || <margin-left>
}
Якщо встановлено менше чотирьох значень, то відсутні значення приймаються на основі визначених. Наприклад, наступні два набори правил отримають однакові результати:
.box {
margin: 0 1.5em;
}
.box {
margin: 0 1.5em 0 1.5em;
}
Кожна з властивостей margin
може також приймати значення auto
. Значення автоматично в основному повідомляє браузеру, щоб визначити margin
для вас. У більшості випадків значення автоматично буде еквівалентно значенню 0 (яке є початковим значенням для кожної властивості margin
), або ж будь-який простір доступний на тій стороні елемента.
.container {
width: 980px;
margin: 0 auto;
}
У цьому прикладі робиться дві речі, щоб орієнтувати цей елемент горизонтально у межах доступного простору:
- Елементу задано вказану ширину
- Лівий та правий поля встановлюються автоматично
Без зазначеної ширини значення автоматично не матимуть ніякого ефекту, встановивши лівий та правий поля до 0 або будь-який інший доступний простір всередині батьківського елемента.
Слід також зазначити, що auto
корисно тільки для горизонтального центрування, і тому використання auto
для верхнього і нижнього полів не буде центрувати елемент по вертикалі.
Нотатка: | Якщо елемент не має батька, відступ буде розраховуватись до краю вікна браузера. Пам'ятай, що у вікна браузера теж встановлені відступи. Щоб їх позбутися, слід встановлювати значення margin для елемента |
Нотатка: | Властивість |
Нотатка: | У блокових елементів розташованих поруч один з одним по вертикалі (
Схлопування не спрацьовує:
|
Синтаксис
margin: length|%|auto|initial|inherit;
Властивість margin може отримувати 5 значень:
length
Визначає відступ в
px, pt, cm
та інших одницях , що прийняті в CSS. Значення без задання дорівнює 0.%
Відступ у відсотках відносно батьківського елемента.
auto
Браузер самостійно обчислить відступ.
initial
Встановлює властивість у значення без задання
inherit
Вказує на спадковість властивості від свого батьківського елемента.
Значення без задання: | 0 |
---|---|
Наслідує: | Ні |
Анімується: | Так |
JavaScript синтаксис: | object.style.margin="100px 50px" |
Переглядачі
Переглядач | |||||
---|---|---|---|---|---|
margin | 1.0 |
6.0 |
1.0 |
1.0 |
3.5 |
Переглядач | |||
---|---|---|---|
margin | 1.0 |
1.0 |
1.0 |
Мобільних переглядачів ще не додано.
Приклади
Динамічний приклад
Демонстрація роботи властивості
Синтаксис властивості
.box {
margin: 16px auto;
}