У меня есть анимация CSS с ключевыми кадрами на моей странице для элементов fadein/out. Проблема в том, что анимация fadeout отображается при загрузке страницы.Как предотвратить анимацию ключевого кадра css при загрузке страницы?
HTML:
<button class="toggle-good">Toggle display</button>
<p class="box">I move nicely!</p>
CSS:
.box {
height: 0;
opacity: 0;
animation: FadeOut 1s ease-in-out;
}
.box.active {
height: initial;
opacity: 1;
animation: FadeIn 1s ease-in-out;
}
@keyframes FadeIn {
0% {
opacity: 0;
height: initial;
}
100% {
opacity: 1;
height: initial;
}
}
@keyframes FadeOut {
0% {
opacity: 1;
height: initial;
}
99% {
opacity: 0;
height: initial;
}
100% {
height: 0;
opacity: 0;
height: 0;
}
}
JS:
$('button').on('click', function(e) {
$(this).siblings('.box').toggleClass('active');
})
Рабочий пример: http://codepen.io/MickL/pen/LkvWaA
Возможный дубликат [Как предотвратить CSS ключевых кадров анимации для запуска при загрузке страницы?] (Http://stackoverflow.com/questions/27938900/how-to-prevent-css-keyframe-animation- to-run-on-page-load) –
Судя по тому, что вы пытаетесь сделать, вам, вероятно, будет лучше с простым переходом. –
Но я хочу изменить высоту до 0 после fadeout-animation. – Mick