Maison > Questions et réponses > le corps du texte
P粉8462943032023-08-31 09:21:48
Vous devez changer la classe du mode en fonction du status. (Nom de classe conditionnel)
Voici un moyen simple de créer des modèles avec le contenu que vous souhaitez :
Tout d'abord, définissez l'animation CSS :
.modal-slide-down { animation-name: slide-down; animation-duration: 0.5s; animation-fill-mode: forwards; } @keyframes slide-down { 0% { transform: translateY(-100%); opacity: 0; } 100% { transform: translateY(0); opacity: 1; } }
Ensuite, dans votre composant React, ajoutez une variable d'état pour savoir si le modal doit être activé ou désactivé :
const [isOpen, setIsOpen] = useState(false);
Lorsque l'utilisateur clique sur un bouton ou effectue une autre action pour ouvrir le modal, définissez l'état isOpen sur true :
<button onClick={() => setIsOpen(true)}>Open Modal</button>
Enfin, appliquez conditionnellement une classe CSS au mode basé sur l'état isOpen :
<div className={`modal ${isOpen ? 'modal-slide-down' : ''}`}> {/* Modal content goes here */} </div>
Plus d'explications :
Lorsque la classe isOpen
状态为true时,模态组件中会添加modal-slide-down
类,从而触发向下滑动动画。当 isOpen
状态为 false 时,modal-slide-down
sera supprimée, l'animation coulissante sera déclenchée.
Avec ces changements, le modal glissera vers le bas lorsqu'il sera ouvert et remontera lorsqu'il sera fermé. Bien entendu, vous devrez peut-être ajuster la durée de l'animation et d'autres propriétés CSS en fonction de votre cas d'utilisation spécifique.
J'espère avoir pu résoudre votre problème.