要素の表示が何もない値から別の値に変化すると、そのアニメーション(存在する場合)がアクティブになります。 誰もこれを防ぐ方法を知っていますか?要素を表示すると、CSSでアニメーションがアクティブにされます。
また、なぜこのようなことが起こるのかを理解することは良いことです。 DOMがリフローされているからですか?ここで
は、私は参考のために何を意味するかの例です:
https://jsfiddle.net/darlyp/2p2q767r/
HTML
<div class="red-square"></div>
<br/>
<button id="btn">
Hide and Show square
</button>
CSS
.red-square{
width: 100px;
height: 100px;
background-color: red;
display: inline-block;
animation: 1s both moveSquare 1;
}
@keyframes moveSquare{
0%{
margin-left: 0px;
}
50%{
margin-left: 400px;
}
100%{
margin-left: 0px;
}
}
JS
あなたはそれを表示する場合https://jsfiddle.net/darlyp/2p2q767r/
あなたは 'display'は「インライン・ブロック」に設定されている' moveSquare'アニメーションを発射したくない意味ですか? – showdev
代わりに 'opacity/height'を切り替えることはできますか? https://jsfiddle.net/2p2q767r/1/ –
@showdevはいいいえ – Darly