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