Два шага
- Описать кадры в
@keyframes.
- Подключить через
animation (или longhand).
@keyframes fade-in {
from { opacity: 0; transform: translateY(8px); }
to { opacity: 1; transform: translateY(0); }
}
.alert {
animation: fade-in 300ms ease-out both;
}
Longhand: animation-name, animation-duration, animation-delay, animation-iteration-count, animation-direction, animation-fill-mode, animation-play-state.
Итог
@keyframes + animation. Для UI-микроанимаций чаще хватает transition; @keyframes — для многошаговых сценариев.