Safari で似たようなものを見つけた人はいますか?
同じ CSS セレクターに 3 つのアニメーション名を定義し、各アニメーションの遅延が以前のアニメーションの継続時間よりも長くなるようにしました。
.bg_anim {
animation-delay: 0s, 5s, 10s;
animation-duration: 3s, 3s, 3s;
animation-name: blueToRed, redToYellow, yellowToBlack;
animation-fill-mode: forwards, forwards, forwards;
-webkit-animation-delay: 0s, 5s, 10s;
-webkit-animation-duration: 3s, 3s, 3s;
-webkit-animation-name: blueToRed, redToYellow, yellowToBlack;
-webkit-animation-fill-mode: forwards, forwards, forwards;
}
@keyframes blueToRed {
0% {background-color: blue}
100% {background-color: red}
}
@-webkit-keyframes blueToRed {
0% {background-color: blue}
100% {background-color: red}
}
@keyframes redToYellow {
0% {background-color: red}
100% {background-color: yellow}
}
@-webkit-keyframes redToYellow {
0% {background-color: red}
100% {background-color: yellow}
}
@keyframes yellowToBlack {
0% {background-color: yellow}
100% {background-color: black}
}
@-webkit-keyframes yellowToBlack {
0% {background-color: yellow}
100% {background-color: black}
}
一連のアニメーションが開始されると、現在のアニメーションの現在のフレームではなく、常に最後のアニメーションの最後のフレームが一時停止によって表示されます。
サンプルの完全版については、https://jsfiddle.net/mrgiba/qtco0dcr/を参照してください。