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