recherche
Maisoninterface Webtutoriel CSSPourquoi ma transition CSS ne fonctionne-t-elle pas sur les éléments masqués ?

Why Doesn't My CSS Transition Work on Hidden Elements?

La transition CSS ne fonctionne pas initialement sur les éléments masqués

Lorsque vous essayez d'animer la propriété d'un élément masqué à l'aide de transitions CSS, vous pouvez rencontrer un problème où l'élément s'affiche instantanément à sa position finale. Cela est dû à la relation entre le modèle d'objet CSS (CSSOM) et le modèle d'objet de document (DOM).

Le rôle de la redistribution et du CSSOM

Les transitions CSS déterminent leur état initial en fonction des styles calculés d'un élément. Cependant, lorsqu'un élément a display: none, le navigateur ignore ses styles calculés puisque l'élément est effectivement invisible au CSSOM.

Dans votre scénario, lorsque vous déclenchez la transition sur .b, il n'a pas de style calculé , car il est caché. Par conséquent, la transition ne peut pas s'initialiser correctement.

Forcer une redistribution

Pour résoudre ce problème, vous pouvez forcer le navigateur à mettre à jour les styles calculés de l'élément masqué avant de lancer la transition. Cela se fait en déclenchant une redistribution.

La redistribution est le processus par lequel le navigateur recalcule la mise en page et les styles calculés de la page entière. Cela peut être déclenché par certaines méthodes DOM ou par le navigateur lui-même lorsque cela est nécessaire, par exemple lorsque l'écran est actualisé.

À l'aide de l'API requestAnimationFrame(), vous pouvez demander au navigateur d'effectuer une redistribution juste avant le prochain paint. l’opération se produit. Cela garantit que les styles calculés de votre élément sont à jour lorsque la transition commence.

Code mis à jour

$('button').on('click', function () {
  $('.b').show(); // Apply display:block synchronously

  requestAnimationFrame(() => {
    // Force a reflow
    document.body.offsetHeight;

    // Trigger the transitions
    $('.b').css('right', '80%');
    $('.a').css('right', '80%');
  });
})

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
Où devrait «abonner au podcast» vers le lien?Où devrait «abonner au podcast» vers le lien?Apr 16, 2025 pm 12:04 PM

Pendant un certain temps, iTunes était le grand chien du podcasting, donc si vous avez lié "Abonnez-vous au podcast" pour aimer:

Diversité du moteur du navigateurDiversité du moteur du navigateurApr 16, 2025 pm 12:02 PM

Nous avons perdu l'opéra lorsqu'ils sont devenus Chrome en 2013. Même accord avec Edge quand il est également devenu Chrome plus tôt cette année. Mike Taylor a qualifié ces changements de "de moins

Considérations UX pour le partage WebConsidérations UX pour le partage WebApr 16, 2025 am 11:59 AM

Des sites trash des appâts clics au plus d'août des publications, les boutons de partage sont depuis longtemps omniprésents sur le Web. Et pourtant on peut soutenir que ces

Actualités hebdomadaires de la plate-forme: Apple déploie des composants Web, rendu HTML progressif, ressources critiques d'auto-hébergementActualités hebdomadaires de la plate-forme: Apple déploie des composants Web, rendu HTML progressif, ressources critiques d'auto-hébergementApr 16, 2025 am 11:55 AM

Au cours de cette semaine, Apple entre dans les composants Web, comment Instagram est des scripts à chargement Insta et de la réflexion pour l'auto-hébergement des ressources critiques.

Git PathSpecs et comment les utiliserGit PathSpecs et comment les utiliserApr 16, 2025 am 11:53 AM

Quand je regardais la documentation des commandes GIT, j'ai remarqué que beaucoup d'entre eux avaient une option. J'ai d'abord pensé que c'était juste un

Un sélecteur de couleurs pour les images de produitsUn sélecteur de couleurs pour les images de produitsApr 16, 2025 am 11:49 AM

Cela ressemble un peu à un problème difficile ne va pas? Nous n'avons souvent pas de photos de produits dans des milliers de couleurs, de sorte que nous pouvons nous déplacer avec. NOUS non plus

Un mode noir bascule avec React et ThemeproviderUn mode noir bascule avec React et ThemeproviderApr 16, 2025 am 11:46 AM

J'aime quand les sites Web ont une option de mode sombre. Le mode Dark facilite la lecture des pages Web et aide mes yeux plus détendus. De nombreux sites Web, y compris

Certains pratiques avec l'élément de dialogue HTMLCertains pratiques avec l'élément de dialogue HTMLApr 16, 2025 am 11:33 AM

C'est moi qui regarde l'élément HTML pour la première fois. J'en ai été conscient depuis un certain temps, mais il ne l'a pas encore pris pour un tour. Il a un peu cool et

See all articles

Outils d'IA chauds

Undresser.AI Undress

Undresser.AI Undress

Application basée sur l'IA pour créer des photos de nu réalistes

AI Clothes Remover

AI Clothes Remover

Outil d'IA en ligne pour supprimer les vêtements des photos.

Undress AI Tool

Undress AI Tool

Images de déshabillage gratuites

Clothoff.io

Clothoff.io

Dissolvant de vêtements AI

AI Hentai Generator

AI Hentai Generator

Générez AI Hentai gratuitement.

Article chaud

R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Meilleurs paramètres graphiques
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Comment réparer l'audio si vous n'entendez personne
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Commandes de chat et comment les utiliser
1 Il y a quelques moisBy尊渡假赌尊渡假赌尊渡假赌

Outils chauds

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

SublimeText3 Linux nouvelle version

SublimeText3 Linux nouvelle version

Dernière version de SublimeText3 Linux

Télécharger la version Mac de l'éditeur Atom

Télécharger la version Mac de l'éditeur Atom

L'éditeur open source le plus populaire

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

VSCode Windows 64 bits Télécharger

VSCode Windows 64 bits Télécharger

Un éditeur IDE gratuit et puissant lancé par Microsoft