CSS Transforms: Rotate, Scale, Translate und Skew

CSS-Transform-Playground

CSS Transforms: Rotate, Scale, Translate, Skew, 3D-Flip | We.Inc

Zieh Regler für rotate, scale, translate und skew und kopiere das CSS und die Tailwind-Klassen. Behandelt die Reihenfolge von Transforms, transform-origin, 3D-Kartenflips und flüssige Animation.

Verschiebe, drehe, skaliere oder neige ein Element mit der Eigenschaft transform: transform: translate(20px, 0) rotate(15deg) scale(1.1) skewX(5deg). Die Funktionen wirken von rechts nach links, daher verändert ihre Reihenfolge das Ergebnis. Transforms verschieben nie das umgebende Layout, und ihre Animation ist günstig, weil der Browser die Arbeit an den Compositor übergeben kann.

Die vier 2D-Transform-Funktionen

Bau mit den Reglern ein Transform zusammen und sieh zu, wie eine Karte reagiert, dann wechsle zwischen der einzelnen Eigenschaft transform und den separaten Eigenschaften translate, rotate und scale. Weiter unten findest du die Origin-Demo, einen 3D-Flip zum Hovern, Rezepte für Transitions und eine Erklärung, warum Transforms flüssig bleiben, während top und left ruckeln.

Häufige Fragen

Warum ist die Reihenfolge der Transform-Funktionen wichtig?

Jede Funktion verändert das Koordinatensystem für die Funktionen, die davor stehen, daher wird die Liste effektiv von rechts nach links angewendet. translate(100px) rotate(45deg) dreht die Box und schiebt sie dann gerade nach rechts, während rotate(45deg) translate(100px) sie entlang der gedrehten, diagonalen Achse verschiebt.

Was ist der Unterschied zwischen transform: rotate() und der Eigenschaft rotate?

Die Eigenschaften rotate, scale und translate sind eigenständige Versionen derselben Funktionen. Sie lassen sich getrennt setzen und animieren, sodass ein scale beim Hover keine anderswo gesetzte Drehung löscht. Der Browser wendet zuerst translate an, dann rotate, dann scale und danach alles in transform.

Beeinflusst transform das Layout oder andere Elemente?

Nein. Das Element behält seine ursprüngliche Box im Layout, und Nachbarn bewegen sich nicht. Nur sein gezeichnetes Bild ändert sich. Ein transformiertes Element erzeugt allerdings einen neuen Stacking Context und wird zum Containing Block für Nachfahren mit fester Position, was dich bei Modals überraschen kann.

Wie spiegle ich ein Element horizontal?

Verwende transform: scaleX(-1) oder die Eigenschaft scale mit scale: -1 1. Das spiegelt das Element um seinen Ursprung, standardmäßig die Mitte. Für einen 3D-Flip mit sichtbarer Rückseite dreh es um die Y-Achse innerhalb eines Elternelements mit perspective.

Warum ist mein transformierter Text unscharf?

Verschiebungen um Bruchteile und manche scale-Werte platzieren Glyphen zwischen Pixeln, was sie weicher macht, besonders während einer laufenden Animation. Translate-Werte auf ganze Pixel zu runden und auf die Endgröße zu skalieren statt von einer kleineren aus hoch, macht das Ergebnis meist schärfer.

Eine Transform-Liste lesen

Warum Transforms flüssig animieren

3D in einem Absatz

Alle Transform-Funktionen

2D- und 3D-Transform-Funktionen mit ihren Tailwind-Utilities

Reihenfolge der Operationen

Dieselben zwei Funktionen in anderer Reihenfolge setzen die Box an eine andere Stelle. Beide blauen Boxen starten an derselben Position.

Erst translate, dann rotate, im Vergleich zu erst rotate, dann translate

In der ersten Box erfolgt die Verschiebung entlang der X-Achse des Bildschirms. In der zweiten folgt sie der gedrehten Achse, daher landet die Box weiter unten.

Einzelne Eigenschaften überschreiben sich nicht gegenseitig

Die Hover-Regel ändert nur scale, daher bleibt das in der Grundregel gesetzte rotate erhalten. Mit der Kurzschreibweise transform müsstest du rotate(-3deg) in :hover wiederholen.

Gleiche Drehung, drei Ursprünge

Der Ursprung ist der Punkt, der fest bleibt. center ist der Standard; top left schwenkt die Box wie eine Tür mit dem Scharnier in der Ecke.

3D-Kartenflip

Zum Umdrehen hovern oder fokussieren (nur CSS)

perspective am Wrapper sorgt für Tiefe, preserve-3d hält beide Seiten in einem 3D-Raum, und backface-visibility blendet die jeweils abgewandte Seite aus. Nutzer mit reduzierter Bewegung bekommen einen sofortigen Wechsel.

Transforms mit Transitions kombinieren

Anheben beim Hover für Karten und Buttons

Nur transform und box-shadow ändern sich, und die Bewegung ist für Leser abgeschaltet, die weniger Bewegung wünschen.

Dieselbe Idee in Tailwind

motion-safe: wendet die Hover-Bewegung nur an, wenn der Leser keine reduzierte Bewegung angefordert hat.

Was sich günstig animieren lässt

Render-Arbeit, die eine Änderung der Eigenschaft auslöst (typisches Browserverhalten)

(kein Transform)

Transform-Playground

Ausgabestil

Kurzschreibweise transform

einzelne Eigenschaften

Zurücksetzen

Karte

Gestrichelter Umriss: wo die Karte im Layout sitzt. Dunkler Punkt: der transform-origin.

CSS kopieren

Tailwind-Klassen

Klassen kopieren

Kostenlos starten · Keine Kreditkarte nötig

Verwandt: Ratgeber

Produkt

Für wen

Funktionen

Ressourcen

Unternehmen

Sitemap