margin-left
Базовая Широко доступная
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна в браузерах с июля 2015 года.
Свойство margin-left CSS задаёт область отступа слева от элемента. Положительное значение смещает элемент дальше от соседних элементов, а отрицательное — ближе.
Попробовать
Вертикальные отступы двух смежных блоков могут сливаться. Это называется слиянием отступов.
В редких случаях, когда ширина ограничена (т. е., когда все width, margin-left, border, padding, область содержимого и margin-right определены), margin-left игнорируется и будет иметь то же вычисленное значение, что и если было указано значение auto.
Синтаксис
/* <length> values */ margin-left: 10px; /* An absolute length */ margin-left: 1em; /* relative to the text size */ margin-left: 5%; /* relative to the nearest block container's width */ /* Keyword values */ margin-left: auto; /* Global values */ margin-left: inherit; margin-left: initial; margin-left: revert; margin-left: revert-layer; margin-left: unset;
Свойство margin-left задаётся ключевым словом auto, или <length>, или <percentage>. Его значение может быть положительным, нулевым или отрицательным.
Значения
<length>-
Размер отступа как фиксированное значение.
<percentage>-
Размер отступа как процент, относительно размера по ходу текста (ширина в горизонтальной ориентации, определяемой
writing-mode) содержащего блока. auto-
Левый отступ получает долю незанятого горизонтального пространства, определяемого главным образом используемым режимом макета. Если значения
margin-leftиmargin-rightоба равныauto, вычисленное пространство распределяется равномерно. В этой таблице обобщаются различные случаи:Значение displayЗначение floatЗначение positionВычисленное значение autoКомментарий inline,inline-block,inline-tableлюбое staticилиrelative0Режим макета по ходу текста block,inline,inline-block,block,table,inline-table,list-item,table-captionлюбое staticилиrelative0, за исключением случая, когда иmargin-leftиmargin-rightустановлены вauto. В этом случае он устанавливается в значение, центрирующее элемент внутри родительского элемента.Режим макета по блокам block,inline,inline-block,block,table,inline-table,list-item,table-captionleftилиrightstaticилиrelative0Режим макета по блокам (плавающий элемент) любое table-*, кромеtable-captionлюбое любое 0Внутренние table-*элементы не имеют отступов, используйтеborder-spacingвместо этоголюбое, кроме flex,inline-flex, илиtable-*любое fixedилиabsolute0, за исключением случая, когда иmargin-leftиmargin-rightустановлены вauto. В этом случае он устанавливается в значение, центрирующее область границы внутри доступногоwidth, если она фиксирована.Режим макета абсолютного позиционирования flex,inline-flexлюбое любое 0, за исключением случая, если есть какое-либо положительное горизонтальное свободное пространство. В этом случае оно равномерно распределяется по всем горизонтальнымautoотступам.Режим макета Flexbox
Формальное определение
| Начальное значение | 0 |
|---|---|
| Применимо к | всем элементам, кроме элементов с типами таблиц display, отличными от table-caption, table и inline-table. Также применяется к ::first-letter. |
| Наследуется | нет |
| Проценты | относятся к ширине содержащего блока |
| Вычисленное значение | указанный процент или абсолютная длина |
| Тип анимации | длина |
Формальный синтаксис
margin-left =
<length-percentage> |
auto |
<anchor-size()>
<length-percentage> =
<length> |
<percentage>
<anchor-size()> =
anchor-size( [ <anchor-name> || <anchor-size> ]? , <length-percentage>? )
<anchor-name> =
<dashed-ident>
<anchor-size> =
width |
height |
block |
inline |
self-block |
self-inline
Примеры
Установление margin-left в процентах
Значения в процентах для margin-left относительны к размеру контейнера по ходу текста.
HTML
<p> A large rose-tree stood near the entrance of the garden: the roses growing on it were white, but there were three gardeners at it, busily painting them red. </p> <p class="example"> Alice thought this a very curious thing, and she went nearer to watch them, and just as she came up to them she heard one of them say, "Look out now, Five! Don't go splashing paint over me like that!" </p> <p> "I couldn't help it," said Five, in a sulky tone; "Seven jogged my elbow." </p>
CSS
.example {
margin-left: 50%;
}
Результат
Спецификации
| Спецификация |
|---|
| CSS Box Model Module Level 3 # margin-physical |
Совместимость с браузерами
| Рабочие столы | Мобильные | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
margin-left |
1 | 12 | 1 | 3.5 | 1 | 18 | 4 | 10.1 | 1 | 1.0 | 4.4 |
auto |
1 | 12Значениеauto не поддерживается в режиме quirks. |
1 | 3.5 | 1 | 18 | 4 | 14 | 1 | 1.0 | 37 |
См. также
-
margin-top,margin-right, иmargin-bottom -
marginсокращённая форма -
margin-block-start,margin-block-end,margin-inline-start, иmargin-inline-end -
margin-blockиmargin-inlineсокращённые формы - CSS модель бокса модуль
© 2005–2024 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/margin-left