Maison >interface Web >tutoriel CSS >Comment animer un Div avec Display : aucun en utilisant uniquement du CSS ?

Comment animer un Div avec Display : aucun en utilisant uniquement du CSS ?

DDD
DDDoriginal
2024-11-12 14:32:02788parcourir

How to Animate a Div with Display: None Using Only CSS?

Animation CSS avec affichage : aucun dilemme

Lorsque vous travaillez avec des animations CSS, vous pouvez rencontrer des situations dans lesquelles vous souhaitez qu'un div s'y glisse plus tard tandis que d'autres éléments remplissent initialement son espace. Cependant, si vous définissez le div animé sur display: none, il continue d'occuper de l'espace et empêche les autres éléments de circuler correctement.

Pour résoudre ce problème, vous avez besoin d'un moyen de vous assurer que le div animé ne fonctionne pas. ne prend pas de place jusqu'à l'heure indiquée pour apparaître. Bien que vous puissiez envisager d'utiliser jQuery, cet article se concentre sur une solution purement CSS pour un timing plus fluide et contrôlé.

Codage en dur de la hauteur

La clé réside dans le codage en dur de la hauteur de le div animé. De cette façon, il réserve l'espace nécessaire sans se rendre visible. Vous pouvez ensuite utiliser des animations CSS pour modifier sa hauteur au moment opportun.

Par exemple, considérons le code suivant :

#main-image {
    height: 0;
    overflow: hidden;
    transition: height 1s ease 3.5s;
}

Animation avec images clés

Une fois la hauteur fixée, vous pouvez utiliser des images clés pour animer son changement. Voici un exemple :

#main-image.fadeInDownBig {
    height: 300px;
}

Dans cet exemple, la classe fadeInDownBig est appliquée au div de l'image principale au moment souhaité, déclenchant la transition vers sa hauteur prévue.

Prise en charge et démo du navigateur

Cette solution CSS uniquement fonctionne bien dans les navigateurs modernes. Vous pouvez voir une démo en direct sur le lien suivant :

  • http://jsfiddle.net/duopixel/qD5XX/

En utilisant ceci technique, vous pouvez réaliser des animations CSS fluides sans les pièges de l'affichage : aucun, garantissant que vos divs se déroulent de manière transparente comme prévu.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn