Gibt es „nur CSS“-Möglichkeiten für den Übergang in und aus einer Animationsschleife?

  • Ich habe eine „Umgebungs“-Transformationsanimation, die auf einem Element ausgeführt wird, wenn nicht mit ihm interagiert wird. Beim Bewegen des Mauszeigers möchte ich die Animation anhalten und in ihre Transformation übergehen, und beim Nichtbewegen des Mauszeigers in den Zustand zurückkehren, in dem sie angehalten wurde, und die Animationswiedergabe fortsetzen.

    VidMate - Download VidMate App Free Install for Android 2022
    VidMate app supports over 200 platforms to download movies and videos. Free download the best YouTube downloader for Android! Download VidMate
    vidmate.onl

    Ich habe vor kurzem angefangen, ein paar Web-Entwicklungsaufgaben zu erledigen, und bin ehrlich gesagt ein bisschen überwältigt davon, wie leistungsfähig CSS ist. Ich weiß, dass dies (zu meiner Frage) mit etwas JS ziemlich einfach ist, wollte aber wissen, ob es ein sauberes Muster/eine saubere Methode gibt, um es nur über CSS anzugehen.

  • Interessante Frage. Du beschreibst das relativ abstrakt, ich habe das mal mit einem einfachen Beispiel untersucht. Grundsätzlich kann man mit animation-play-state eine Animation pausieren. Versuche ich jedoch dann, über hover eine andere Transformation anzuwenden, funktioniert das nicht zuverlässig:

    Meine nächste Idee war, die Transformation im hover-Status auf einen Wrapper anzuwenden. Das funktioniert:

    Dabei kann man allerdings schon diskutieren ob das sauber ist oder Trickserei mit dem Wrapper.

    Außerdem muss man Obacht geben, dass das Element durch die Transformation den hover-Status nicht wieder verliert, ist mir durch ein translate passiert.


    Generell gehöre ich zu der Fraktion, die dagegen ist, auf Biegen und Brechen alles nur mit CSS zu realisieren. Besser die Webanimation-API verwenden, dann hat man alles im Griff und kann es auf direktem Wege steuern.

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!