Spec-Zone.ru › CSS

верх

Базовая линия Широко доступная

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и версиях браузеров. Она доступна во всех браузерах с июля 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

Spec-Zone.ru

Настройки Оффлайн Что нового Помощь О нас
Spec-Zone .ru
спецификации, руководства, описания, API