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