Я до сих пор не знаю, почему круг выглядит странно, но мне удалось найти решение, которое работает:
Вот что у меня было:
animation: circle .3s forwards, circle .3s forwards;
animation-delay: 1.7s, 4.9s;
и анимация:
@keyframes circle {
0%{
transform:scale(0);
}
50%{
opacity:1;
}
100%{
transform:scale(1);
opacity:0;
}
}
Вместо того, чтобы вызывать анимацию дважды, я создал одну большую анимацию:
animation: circle 3.5s forwards;
animation-delay:1.7s;
и это анимация:
@keyframes circle{
0%{
transform:scale(0);
}
4%{
opacity:1;
}
8%{
transform:scale(1);
opacity:0;
}
92%{
transform:scale(0);
opacity:0;
}
96%{
opacity:1;
}
100%{
transform:scale(1);
opacity:0;
}
}
Таким образом, начальная длительность анимации 0,3 с теперь равна 8%, а задержка анимации между анимациями равна 74% от нуля в анимации.