CSS animation-trigger — синтаксис и примеры
CSS-свойство animation-trigger: назначение, рабочее значение, влияние на раскладку или отрисовку, ошибки и поддержка браузерами.
«animation-trigger» отмечено как экспериментальное в MDN Browser Compatibility Data. Предусмотрите базовый вариант и протестируйте целевые браузеры.
Когда применять
«animation-trigger» рассматривается не как изолированный синтаксис, а как часть области «движение и преобразования». Свойство animation-trigger относится к области «движение и преобразования» и обычно работает после раскладки и требует учёта prefers-reduced-motion. Практический контекст для «animation-trigger» — в карточке материала с длинным заголовком; во время проверки измеряйте компонент, а не только весь viewport.
Проверяя «animation-trigger», соблюдайте правило: проверяйте animation-trigger вместе с родительским контекстом и соседними правилами. Для «animation-trigger» изменяйте одно условие за запуск и фиксируйте фактический результат.
Синтаксис animation-trigger
Синтаксис «animation-trigger» показан на минимальном фрагменте без внешнего фреймворка. Сначала запустите исходный вариант, затем меняйте отмеченную часть.
.demo {
animation-trigger: pulse 1s ease-in-out infinite alternate;
}Как работает animation-trigger
Свойство animation-trigger относится к области «движение и преобразования» и обычно работает после раскладки и требует учёта prefers-reduced-motion. Для «animation-trigger» проверьте две контрольные точки — порядок фокуса в дереве доступности и изменение DOM в панели Elements: так видно, на каком этапе появляется итоговое поведение этой темы.
Проверка в проекте
- Проверьте вычисленное значение animation-trigger, наследование и контекст родителя; результат относится непосредственно к «animation-trigger».
- Включить направление rtl и проверить логические стороны раскладки при разборе «animation-trigger».
- Проверьте «animation-trigger» в карточке материала с длинным заголовком через порядок фокуса в дереве доступности и запишите наблюдаемое изменение.
Оставляйте «animation-trigger» в решении только после проверки в карточке материала с длинным заголовком. Если нативная конструкция решает задачу «animation-trigger» с меньшим числом условий, используйте её.
Практика с animation-trigger
Соберите «animation-trigger» в минимальном компоненте и проверьте предметное условие: проверьте вычисленное значение animation-trigger, наследование и контекст родителя. Затем для «animation-trigger» замените содержимое длинным и сузьте контейнер до 320 px.
Сценарий: в карточке материала с длинным заголовком.
Ошибки при работе с animation-trigger
Контекст
Изолированная декларация animation-trigger без связанных ограничений может дать другой результат в реальном компоненте — это предметный риск для «animation-trigger».
Устойчивость
Отсутствие запасного поведения при неподдерживаемой возможности при использовании «animation-trigger».
Доступность
Зависимость результата от placeholder вместо постоянной подписи; для «animation-trigger» проверьте это отдельно.
Поддержка animation-trigger
Для «animation-trigger» таблица собрана из закреплённой версии MDN Browser Compatibility Data. Указанная версия браузера показывает первое заявленное появление базовой поддержки «animation-trigger»; окончательное решение принимайте по аудитории конкретного проекта.
Спецификация: источник 1.
Вопросы о animation-trigger
Как понять, что «animation-trigger» выбрано правильно?
«animation-trigger» выбрано правильно, когда оно решает задачу «изменять визуальное положение или переход между состояниями интерфейса», сохраняет результат в карточке материала с длинным заголовком и проходит предметную проверку: проверьте вычисленное значение animation-trigger, наследование и контекст родителя.
Нужен ли запасной вариант для «animation-trigger»?
Для «animation-trigger» запасной вариант обязателен: возможность отмечена как экспериментальная. Сначала реализуйте базовое поведение «animation-trigger», затем подключайте улучшение после проверки поддержки.
Спецификации и источники
Синтаксис и статус проверяются по HTML Living Standard, спецификациям CSS и MDN Browser Compatibility Data. Примеры и объяснения подготовлены для этого сервиса.