Свойство CSS `top`
Базовая поддержка Широко доступно
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и во многих версиях браузеров. Она доступна во всех браузерах с июля 2015 года.
Свойство top CSS задаёт вертикальное положение позиционированного элемента. Это свойство отступа не действует на непозиционированные элементы.
Попробуйте
top: 0;
top: 4em;
top: 10%;
top: 20px;
<section id="default-example">
<div class="example-container">
<div id="example-element">I am absolutely positioned.</div>
<p>
As much mud in the streets as if the waters had but newly retired from the
face of the earth, and it would not be wonderful to meet a Megalosaurus,
forty feet long or so, waddling like an elephantine lizard up Holborn
Hill.
</p>
</div>
</section>
.example-container {
border: 0.75em solid;
padding: 0.75em;
text-align: left;
position: relative;
width: 100%;
min-height: 200px;
}
#example-element {
background-color: #264653;
border: 4px solid #ffb500;
color: white;
position: absolute;
width: 140px;
height: 60px;
}
Эффект свойства top зависит от способа позиционирования элемента (то есть от значения свойства position):
- Если свойству
positionзадано значениеabsoluteилиfixed, свойствоtopзадаёт расстояние между внешним отступом верхнего края элемента и внутренней границей верхнего края содержащего блока или, для элементов с позиционированием относительно якоря, если в значении используется функцияanchor(), — относительно указанного края<anchor-side>. Свойствоtopсовместимо со значениямиtop,bottom,start,end,self-start,self-end,centerи<percentage>. - Если свойству
positionзадано значениеrelative, свойствоtopзадаёт расстояние, на которое верхний край элемента смещается вниз от своего обычного положения. - Если свойству
positionзадано значениеsticky, свойствоtopиспользуется для вычисления прямоугольника ограничения прилипания. - Если свойству
positionзадано значениеstatic, свойствоtopне действует.
Если заданы значения свойств top и bottom, возможны три случая:
- Если свойству
positionзадано значениеabsoluteилиfixed, аheightне задано (то есть равноautoили100%), учитываются оба значения —topиbottom. - Если свойству
positionзадано значениеrelativeилиheightограничено, приоритет имеет свойствоtop, а свойствоbottomигнорируется. - Если свойству
positionзадано значениеsticky, учитываются оба значения —topиbottom. Это означает, что прилипающий элемент может перемещаться вверх и вниз внутри содержащего блока в зависимости от значений этих двух свойств, пока блок позиционирования элемента остаётся внутри содержащего блока.
Синтаксис
/* <length> values */ top: 3px; top: 2.4em; top: anchor(bottom); top: anchor-size(--my-anchor self-block, 10%); /* <percentage>s of the height of the containing block */ top: 10%; /* Keyword value */ top: auto; /* Global values */ top: inherit; top: initial; top: revert; top: revert-layer; top: unset;
Значения
-
<length> - Отрицательное, нулевое или положительное значение
<length>:- для абсолютно позиционированных элементов задаёт расстояние до верхнего края содержащего блока;
- для элементов с позиционированием относительно якоря функция
anchor()возвращает значение<length>относительно положения верхнего или нижнего края связанного элемента-якоря (см. раздел Использование свойств отступа со значениями функцииanchor()), а функцияanchor-size()возвращает значение<length>относительно ширины или высоты связанного элемента-якоря (см. раздел Задание положения элемента на основе размера якоря); - для относительно позиционированных элементов задаёт расстояние, на которое элемент смещается вниз от своего обычного положения.
-
<percentage> - Процентное значение
<percentage>от высоты содержащего блока. -
auto - Указывает, что:
- для абсолютно позиционированных элементов положение элемента зависит от свойства
bottom, аheight: autoсчитается высотой, определяемой содержимым; если жеbottomтакже равноauto, элемент располагается там, где он находился бы по вертикали, будь он статическим элементом; - для относительно позиционированных элементов расстояние элемента от его обычного положения зависит от свойства
bottom; если жеbottomтакже равноauto, элемент вообще не смещается по вертикали.
- для абсолютно позиционированных элементов положение элемента зависит от свойства
Формальное определение
| Начальное значение | auto |
|---|---|
| Применяется к | позиционированным элементам |
| Наследуется | нет |
| Проценты | относительно высоты содержащего блока |
| Вычисленное значение | если задано значение длины — соответствующая абсолютная длина; если задано процентное значение — указанное значение; в противном случае — <code>auto</code> |
| Тип анимации | $1$, <a href="/en-US/docs/Web/CSS/Reference/Values/percentage#interpolation" title="Значения CSS-типа данных <percentage> интерполируются как действительные числа с плавающей запятой.">процентное значение</a> или calc(); |
Формальный синтаксис
top = auto | <length-percentage> | <anchor()> | <anchor-size()> <length-percentage> = <length> | <percentage> <anchor()> = anchor( <anchor-name>? && <anchor-side>, <length-percentage>? ) <anchor-size()> = anchor-size( [ <anchor-name> || <anchor-size> ]? , <length-percentage>? ) <anchor-name> = <dashed-ident> <anchor-side> = inside | outside | top | left | right | bottom | start | end | self-start | self-end | <percentage> | center <anchor-size> = width | height | block | inline | self-block | self-inline
Примеры
Позиционированный элемент, отступающий на 10% от верхнего края
body {
background: beige;
}
div {
position: absolute;
top: 10%;
right: 40%;
bottom: 20%;
left: 15%;
background: gold;
border: 1px solid blue;
}
<div>The size of this content is determined by the position of its edges.</div>
Спецификации
| Спецификация |
|---|
| Модуль CSS Positioned Layout, уровень 3 # отступы |
Совместимость с браузерами
| Настольные компьютеры | Мобильные устройства | |||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome для Android | Firefox для Android | Opera для Android | Safari для iOS | Samsung Internet | WebView для Android | WebView для iOS | |
top |
1 |
12 |
1 |
6 |
1 |
18 |
4 |
14 |
1 |
1.0 |
4.4 |
1 |
anchor |
125 |
125 |
147 |
111 |
26 |
125 |
147 |
83 |
26 |
27.0 |
125 |
26 |
anchor-size |
132 |
132 |
147 |
117 |
26 |
132 |
147 |
87 |
26 |
29.0 |
132 |
26 |
auto |
1 |
12 |
1 |
15 |
1 |
18 |
4 |
14 |
1 |
1.0 |
4.4 |
1 |
См. также
-
bottom,leftиright -
Сокращённое свойство
inset -
inset-block-start,inset-block-end,inset-inline-startиinset-inline-end -
Сокращённые свойства
inset-blockиinset-inline position- Модуль CSS для позиционированных элементов
© 2005–2025 MDN contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/top