Puis-je conserver les transitions CSS lorsque l'attribut toggle est utilisé ?
P粉465675962
P粉465675962 2023-08-02 21:13:37
0
1
495
<p>J'ai un div qui se déplace de gauche à droite. Pour qu'il soit toujours à l'écran et jamais aligné lorsque la fenêtre est redimensionnée, j'inverse l'utilisation de la gauche et de la droite en fonction du côté de l'écran le plus proche.
P粉465675962
P粉465675962

répondre à tous(1)
P粉038161873

La raison pour laquelle votre transition semble passer rapidement de l'autre côté lorsque vous passez de droite à gauche est parce que vous définissez gauche et droite sur des valeurs automatiques. Les transitions CSS (ou les animations CSS en général) ne fonctionnent pas avec les accessoires avec des valeurs automatiques.

Ceci est tiré de la documentation Utilisation des transitions CSS :

Peut-être feriez-vous mieux d'utiliser les propriétés CSS de transformation avec la fonction translateX() au lieu des accessoires CSS gauche/droite. Cela vous donnera une valeur CSS unique et fiable ? conversion et améliorer les performances.

Votre code pourrait ressembler à ceci :


function moveTimeline(screenIndex) {

  ...

  if (isOnLeftSide) {
      timelineBackground.css({
         "transform": `translateX(-${new_timelinePosition}px)`
      });
  } else {
      timelineBackground.css({
          "transform": `translateX(${new_timelinePosition}px)`
      });
  }
}

Votre transition CSS ressemblera à ceci :

transition: transform 1s ease;

H devrait être utile

Derniers téléchargements
Plus>
effets Web
Code source du site Web
Matériel du site Web
Modèle frontal