J'ai regardé les réponses SO (question 1, question 2, question 2) mais je n'arrive toujours pas à faire fonctionner correctement mon animation. J'ai une simple image clé qui s'anime au début mais qui n'anime pas le retour hidden class
qui utilise animation-direction: reverse
pour cacher l'élément à l'état initial de l'image-clé.Animer les images-clés CSS à l'état initial
Je voudrais animer l'élément à translateY(0%)
lorsque le bouton show est cliqué et animer revenir à translateY(-50%)
lorsque le bouton est cliqué cacher mais le animation-timing-function: ease
n'applique pas correctement donc pas d'animation. J'ai aussi besoin d'utiliser des images clés pour cela car j'animerai des transformations plus compliquées plus tard.
Voici ce que j'ai:
$('#show').on('click', function() {
\t $('#slide').removeClass('hidden');
});
$('#hide').on('click', function() {
\t $('#slide').addClass('hidden');
});
#slide {
background: #333;
color: #fff;
font-size: 14px;
font-weight: bold;
text-align: center;
width: 200px;
padding: 20px;
margin-bottom: 30px;
display: block;
animation-iteration-count: 1;
animation-direction: normal;
animation-duration: 0.4s;
animation-delay: 0s;
animation-timing-function: ease;
animation-fill-mode: both;
}
#slide.animation1 {
animation-name: slide;
}
#slide.hidden {
animation-direction: reverse;
}
@keyframes slide {
0% {
opacity: 0;
transform: translateY(-50%);
}
100% {
opacity: 1;
transform: translateY(0%);
}
}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<div id="slide" class="animation1">
<p>Lorem ipsum dolor sit amet, ius no feugiat vulputate, hendrerit quaerendum instructior ei eum. Fabellas percipitur definitionem ex vel.</p>
</div>
<button id="show">Show</button>
<button id="hide">Hide</button>
Je suppose que c'est le seul moyen, merci! – g5wx