Spec-Zone.ru › CSS

Свойство CSS `offset-distance`

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

Эта функция хорошо зарекомендовала себя и работает на многих устройствах и в разных версиях браузеров. Она доступна во всех браузерах с сентября 2022 года.

Свойство offset-distance CSS задаёт положение элемента вдоль offset-path.

Попробуйте

offset-distance: 0%;
offset-distance: 80%;
offset-distance: 50px;
<section class="default-example" id="default-example">
  <div class="transition-all" id="example-element"></div>
</section>
#example-element {
  width: 24px;
  height: 24px;
  background: #2bc4a2;
  offset-path: path("M-70,-40 C-70,70 70,70 70,-40");
  clip-path: polygon(0% 0%, 70% 0%, 100% 50%, 70% 100%, 0% 100%, 30% 50%);
}

/* Provides a reference image of what path the element is following */
#default-example {
  background-position: calc(50% - 12px) calc(50% + 14px);
  background-repeat: no-repeat;
  background-image: url('data:image/svg+xml;utf8,<svg xmlns="http://www.w3.org/2000/svg" viewBox="-75 -45 150 140" width="150" height="140"><path d="M-70,-40 C-70,70 70,70 70,-40" fill="none" stroke="lightgrey" stroke-width="2" stroke-dasharray="4.5"/></svg>');
}

Синтаксис

/* Default value */
offset-distance: 0;

/* the middle of the offset-path */
offset-distance: 50%;

/* a fixed length positioned along the path */
offset-distance: 40px;

/* Global values */
offset-distance: inherit;
offset-distance: initial;
offset-distance: revert;
offset-distance: revert-layer;
offset-distance: unset;
<length-percentage>

Длина, которая задаёт, насколько далеко элемент находится вдоль пути (определяемого с помощью offset-path).

100% соответствует полной длине пути (если offset-path определено как базовая фигура или path()).

Формальное определение

Исходное значение 0
Применяется к трансформируемым элементам
Наследуется нет
Проценты относительно полной длины пути
Вычисленное значение для <length> — абсолютное значение, в противном случае — процентное
Тип анимации $1$, <a href="/en-US/docs/Web/CSS/Reference/Values/percentage#interpolation" title="Значения CSS-типа данных <percentage> интерполируются как действительные числа с плавающей точкой.">процентное значение</a> или calc();

Формальный синтаксис

offset-distance = 
  <length-percentage>

<length-percentage> = 
  <length> |
  <percentage>

Примеры

Использование offset-distance в анимации

Анимация движения в CSS Motion Path обычно создаётся путём анимации свойства offset-distance. Чтобы анимировать элемент вдоль всего пути, задайте его offset-path, а затем настройте анимацию, которая изменяет offset-distance от 0% до 100%.

HTML

<div id="motion-demo"></div>

CSS

#motion-demo {
  offset-path: path("M20,20 C20,100 200,0 200,100");
  animation: move 3000ms infinite alternate ease-in-out;
  width: 40px;
  height: 40px;
  background: cyan;
}

@keyframes move {
  0% {
    offset-distance: 0%;
  }
  100% {
    offset-distance: 100%;
  }
}

Результат

Спецификации

Спецификация
Модуль траекторий движения, уровень 1
# offset-distance-property

Совместимость с браузерами

Настольные устройства Мобильные устройства
Chrome Edge Firefox Opera Safari Chrome для Android Firefox для Android Opera для Android Safari для iOS Samsung Internet WebView для Android WebView для iOS
offset-distance
55
46
79
79
72
42
33
16
55
46
79
42
33
16
6.0
5.0
55
46
16

См. также

  • offset
  • offset-anchor
  • offset-path
  • offset-position
  • offset-rotate

© 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/offset-distance

Spec-Zone.ru

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