верх
Базовая линия Широко доступная
Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 2015 года.
Свойство top CSS задаёт вертикальное положение позиционированного элемента. Это свойство position не влияет на непозиционированные элементы.
Попробуйте
Эффект 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: calc(anchor(--myAnchor 50%) + 10px); /* <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>, относительное к верхней или нижней границе связанного элемента-якоря. - для элементов с относительным позиционированием, расстояние, на которое элемент смещён вниз от своего нормального положения.
<percentage>-
Процент от высоты содержащего блока.
auto-
Указывает, что:
- для элементов с абсолютным позиционированием, положение элемента основано на свойстве
bottom, в то время какheight: autoрассматривается как высота, основанная на содержании; или еслиbottomтакже являетсяauto, элемент размещается в том вертикальном положении, которое он занимал бы как статический элемент. - для элементов с относительным позиционированием, расстояние элемента от его нормального положения основано на свойстве
bottom; или еслиbottomтакже являетсяauto, элемент вообще не смещается по вертикали.
- для элементов с абсолютным позиционированием, положение элемента основано на свойстве
inherit-
Указывает, что значение совпадает с вычисленным значением от родительского элемента (который может не быть содержащим блоком). Это вычисленное значение затем обрабатывается так, как если бы это было значение
<length>,<percentage>или ключевое словоauto.
Формальное определение
| Начальное значение | auto |
|---|---|
| Применяется к | элементам с позиционированием |
| Наследуется | нет |
| Проценты | относятся к высоте содержащего блока |
| Вычисленное значение | если указано как длина, соответствующая абсолютная длина; если указано как процент, заданное значение; в противном случае, auto
|
| Тип анимации | 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 Module Level 3 # insets |
Совместимость с браузерами
| Рабочий стол | Мобильный | ||||||||||
|---|---|---|---|---|---|---|---|---|---|---|---|
| Chrome | Edge | Firefox | Opera | Safari | Chrome Android | Firefox для Android | Opera Android | Safari на iOS | Samsung Internet | WebView Android | |
top |
1 | 12 | 1 | 6 | 1 | 18 | 4 | 14 | 1 | 1.0 | 4.4 |
anchor |
125 | 125 | Нет | 111 | Нет | 125 | Нет | 83 | Нет | 27.0 | 125 |
auto |
1 | 12 | 1 | 15 | 1 | 18 | 4 | 14 | 1 | 1.0 | 4.4 |
См. также
-
bottom,leftиright -
insetсокращение -
inset-block-start,inset-block-end,inset-inline-startиinset-inline-end -
inset-blockиinset-inlineсокращения position- Модуль 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/top