CSSでローディング画面によくある、横に流れるアニメーションを実装しようと奮闘中です。
以下のアニメーションreflectionとして設定したのですが、「3秒かけてアニメーションし、それを即座に繰り返す」という意図で次の指定をしています。
しかし「即座に繰り返す」が効かない状況です。
CSS
1-moz-animation: reflection 3s ease 0s infinite;
以下は全てのコードです。
html
1<div class="wrapper"> 2 <div class="reflection-img"> 3 <div class="reflection"></div> 4 </div> 5</div> 6
css
1.wrapper { 2 background: black; 3 position: relative; 4 width: 100vw; 5 height: 100vh; 6} 7.reflection-img { 8 width: 100%; 9 height: 100vh; 10 position: absolute; 11 overflow: hidden; 12} 13.reflection { 14 height: 100%; 15 width: 10%; 16 position: absolute; 17 left: 0; 18 background-color: rgba(255,255,255,0.2); 19 -moz-animation: reflection 3s ease 0s infinite; 20} 21@keyframes reflection { 22 0% { transform: scale(0) rotate(0deg); opacity: 0; } 23 80% { transform: scale(0) rotate(0deg); opacity: 0.5; } 24 81% { transform: scale(4) rotate(0deg); opacity: 1; } 25 100% { transform: scale(50) rotate(0deg); opacity: 0; } 26}
横着せずショートハンドをきちんと以下のように書いたのですが、同じでした。
css
1 -moz-animation: reflection 3s ease 0s infinite; 2 3 /* ショートハンドをやめてきちんと以下で指定しても変化なし */ 4 animation-duration: 3s; /* 3秒かけてアニメーション */ 5 animation-delay: 0s; /* それを即座に繰り返す */
即座に繰り返す方の指定は何が間違っているでしょうか?
回答1件
あなたの回答
tips
プレビュー
バッドをするには、ログインかつ
こちらの条件を満たす必要があります。
2020/07/24 03:54