afficher/masquer l'élément à ajouter/removeClass avec CSS transition

J'aimerais afficher/masquer un élément avec addClass et removeClass fonction d'animation avec une transition CSS.
J'ai essayé de cette façon, mais quand je addClass "active" de l'affichage ne s'affiche pas.

.hidden {
  display: none;
  -webkit-transition: display .5s ease;
  -moz-transition: display .5s ease;
  -o-transition: display .5s ease;
}

.active {
  transition: display .5s ease;
  -webkit-transition: display .5s ease;
  -moz-transition: display .5s ease;
  -o-transition: display .5s ease;
}

#test {
  width: 100px;
  height: 40px;
  background: red;
}

-

$('#btn').on('click', function(){
   $('#test').toggleClass('active');
});

-

<div id="test" class="hidden">Hallo!</div>
<input type="button" id="btn" value="show/hide">

jsfiddle

Comment pourrais-je le faire? merci

Vous pouvez animer l'opacité, mais vous ne pouvez pas animer d'affichage. Vous devez animer l'opacité d'abord, et à la fin de l'animation, un changement de propriété d'affichage.
Cela peut également être utile: stackoverflow.com/questions/7302824

OriginalL'auteur Gus | 2015-03-20