Spec-Zone.ru › CSS

Анимации, управляемые прокруткой CSS

Модуль анимаций, управляемых прокруткой CSS предоставляет функциональность, построенную поверх модуля анимаций CSS и API анимаций Web. Он позволяет анимировать значения свойств, основываясь на прогрессе по временной шкале, управляемой прокруткой, вместо стандартной временной шкалы документа. Это означает, что вы можете анимировать элемент, прокручивая прокручиваемый элемент, а не только со временем.

Существует два типа временных шкал, управляемых прокруткой:

  • временная шкала прогресса прокрутки: Вы продвигаете эту временную шкалу, прокручивая прокручиваемый элемент (прокручиватель) сверху вниз (или слева направо) и обратно. Положение в диапазоне прокрутки преобразуется в процент прогресса — 0% в начале и 100% в конце.
  • временная шкала прогресса видимости: Вы продвигаете эту временную шкалу, основываясь на изменении видимости элемента (известного как объект) внутри прокручивателя. Видимость объекта внутри прокручивателя отслеживается как процент прогресса — по умолчанию временная шкала находится на 0%, когда объект впервые становится видимым на одном краю прокручивателя, и на 100%, когда он достигает противоположного края.

Когда одна из этих двух временных шкал применяется к анимируемому элементу, анимация продвигается по этой временной шкале вместо стандартной временной шкалы.

Можно настроить эффективное размещение анимации по временным шкалам прогресса прокрутки и прогресса видимости, то есть вы можете определить позицию, в которой начинается и заканчивается анимация. Это можно сделать несколькими способами:

  • Можно применить значения диапазона начала и конца анимации к анимации, чтобы настроить положение начальной и конечной позиции анимации по временной шкале.
  • К временным шкалам прогресса видимости можно применить начальный и/или конечный отступ (или смещение) для настройки положения области прокрутки (см. Контейнер прокрутки для получения более подробной информации). Другими словами, это позволяет указать начальные и/или конечные значения отступа (или смещения), которые смещают положение самой временной шкалы.

Анимации, управляемые прокруткой, в действии

Вы можете найти несколько инструментов и демо, демонстрирующих анимации, управляемые прокруткой, в действии, по адресу Инструменты и демонстрации анимаций, управляемых прокруткой.

Справочник

Свойства

Установите временную шкалу, которая будет управлять прогрессом анимации, и установите ее диапазон привязки по этой временной шкале:

  • animation-timeline
  • animation-range
  • animation-range-start
  • animation-range-end

Определите именованные временные шкалы прогресса прокрутки:

  • scroll-timeline
  • scroll-timeline-axis
  • scroll-timeline-name

Определите именованные временные шкалы прогресса видимости:

  • view-timeline
  • view-timeline-axis
  • view-timeline-inset
  • view-timeline-name

Изменить область действия временной шкалы:

  • timeline-scope

Правила

Анимации, управляемые прокруткой CSS, добавляют возможность включения <timeline-range-name> в блоки @keyframes, чтобы разместить ключевые кадры в определенных позициях внутри именованных диапазонов временных шкал.

Функции

Возможные значения свойства animation-timeline для определения безымянных временных шкал прогресса прокрутки и безымянных временных шкал прогресса видимости (т.е. неявно определенных браузером, а не явно названных и определенных с помощью свойств scroll-timeline-* и view-timeline-*):

  • scroll()
  • view()

Возможности JavaScript

  • Element.animate()
  • AnimationTimeline
  • ScrollTimeline
  • ViewTimeline

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

Спецификация
Анимации, управляемые прокруткой
CSS Анимации Уровень 2
Web Анимации Уровень 2

См. также

  • Анимировать элементы при прокрутке с помощью анимаций, управляемых прокруткой на developer.chrome.com
  • Анимации CSS
  • API анимаций Web

© 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/CSS_scroll-driven_animations

Spec-Zone.ru

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