Привет Хабр! Неожиданно столкнулся с проблемой, уже казалось что ничего неизведанного в CSS не осталось, однако...
Есть элемент который крутится по кругу с помощью CSS анимации
@keyframes rotation {
from {
transform: rotate(0deg);
}
to {
transform: rotate(359deg);
}
}
.circle {
width: 188px;
height: 188px;
background: url(../imgs/youtube-circle.svg);
animation-name: rotation;
animation-timing-function: linear;
animation-duration: 20s;
animation-iteration-count: infinite;
position: absolute;
top: 0;
left: 0;
transition: all .3s ease;
}
.circle:hover {
animation-duration: 5s;
}
Необходимо чтобы при наведении скорость увеличивалось, ускоряю уменьшением animation-duration. Но при наведении перед изменением скорости происходит скачок, как будто сбрасывается transform на исходное значение.
Вот как это происходит
https://disk.yandex.ru/i/U9SwafVorEFhOw
Возможно ли как то плавно ускорить кручение избежав этого рывка