CSS3 2D-Transformation
CSS3-Transformationen
CSS3-Transformationen können Elemente verschieben, skalieren, drehen, verlängern oder strecken.

Wie funktioniert das?
Die Wirkung einer Transformation besteht darin, die Form, Größe und Position eines Elements zu ändern.
Sie können 2D- oder 3D-Transformationen verwenden, um Ihre Elemente zu transformieren.
Bewegen Sie die Maus über die folgenden Elemente, um die 2D- und 3D-Transformationseffekte zu sehen:
Browser-Unterstützung
Die Zahlen in der Tabelle geben die erste Browserversion an, die die Eigenschaft unterstützt.
Zahlen gefolgt von -webkit-, -ms- oder -moz- geben die erste Browserversion an, die die präfixierte Eigenschaft unterstützte.
| Eigenschaft | |||||
|---|---|---|---|---|---|
| transform | 36.0 4.0 -webkit- |
10.0 9.0 -ms- |
16.0 3.5 -moz- |
3.2 -webkit- | 23.0 15.0 -webkit- 12.1 10.5 -o- |
| transform-origin (Zwei-Wert-Syntax) |
36.0 4.0 -webkit- |
10.0 9.0 -ms- |
16.0 3.5 -moz- |
3.2 -webkit- | 23.0 15.0 -webkit- 12.1 10.5 -o- |
Internet Explorer 10 und Opera unterstützen die transform-Eigenschaft.
Chrome und Safari benötigen die mit -webkit- präfixierte Version.
Hinweis:Internet Explorer 9 erfordert die mit -ms- präfixierte Version.
2D-Transformation
In diesem Kapitel lernst du 2D-Transformationsmethoden kennen:
- translate()
- rotate()
- scale()
- skew()
- matrix()
Im nächsten Kapitel lernst du 3D-Transformationen kennen.
Beispiel
Selbst ausprobieren »
translate()-Methode

Die translate()-Methode verschiebt ein Element von seiner aktuellen Position entsprechend den Parametern, die für die linke (X-Achse) und obere (Y-Achse) Position angegeben sind.
Beispiel
Selbst ausprobieren »
Der translate-Wert (50px, 100px) verschiebt das Element 50 Pixel von links und 100 Pixel von oben.
rotate()-Methode

Die rotate()-Methode dreht ein Element um einen angegebenen Winkel im Uhrzeigersinn. Negative Werte sind erlaubt, wodurch das Element gegen den Uhrzeigersinn gedreht wird.
Beispiel
Selbst ausprobieren »
Der rotate-Wert (30deg) dreht das Element um 30 Grad im Uhrzeigersinn.
scale()-Methode

Die scale()-Methode vergrößert oder verkleinert die Größe eines Elements, abhängig von den Parametern für Breite (X-Achse) und Höhe (Y-Achse):
Beispiel
Selbst ausprobieren »
scale(2,3) transformiert die Breite auf das 2-Fache ihrer ursprünglichen Größe und die Höhe auf das 3-Fache ihrer ursprünglichen Größe.
skew()-Methode
Syntax
transform:skew(<angle> [,<angle>]);
Enthält zwei Parameterwerte, die die Scherwinkel entlang der X-Achse und der Y-Achse repräsentieren. Wenn der zweite Parameter leer ist, ist sein Standardwert 0. Negative Parameter geben eine Scherung in die entgegengesetzte Richtung an.
- skewX(<angle>); stellt eine Scherung nur entlang der X-Achse (horizontale Richtung) dar.
- skewY(<angle>); stellt eine Scherung nur entlang der Y-Achse (vertikale Richtung) dar.
Beispiel
Selbst ausprobieren »
skew(30deg,20deg)Element inXAchse undYVerzerrt 20 Grad und 30 Grad entlang der Achsen.
matrix()-Methode

Die matrix()-Methode kombiniert alle 2D-Transformationsmethoden in einer.
Die matrix-Methode hat sechs Parameter, darunter Funktionen für Rotation, Skalierung, Bewegung (Translation) und Verzerrung.
Beispiel
Verwenden Sie die matrix()-Methode, um das div-Element um 30° zu drehen.
Selbst ausprobieren »
Neue Transformationseigenschaften
Im Folgenden sind alle Transformationseigenschaften aufgelistet:
| Eigenschaft | Beschreibung | CSS |
|---|---|---|
| transform | Gilt für Elemente für 2D- oder 3D-Transformationen. | 3 |
| transform-origin | Ermöglicht es Ihnen, die Position des transformierten Elements zu ändern. | 3 |
2D-Konvertierungsmethoden
| Funktion | Beschreibung |
|---|---|
| matrix(n,n,n,n,n,n) | Definiert eine 2D-Transformation unter Verwendung einer Matrix aus sechs Werten. |
| translate(x,y) | Definiert eine 2D-Transformation, die ein Element entlang der X- und Y-Achse verschiebt. |
| translateX(n) | Definiert eine 2D-Transformation, die ein Element entlang der X-Achse verschiebt. |
| translateY(n) | Definiert eine 2D-Transformation, die ein Element entlang der Y-Achse verschiebt. |
| scale(x,y) | Definiert eine 2D-Skalierungstransformation, die die Breite und Höhe des Elements ändert. |
| scaleX(n) | Definiert eine 2D-Skalierungstransformation, die die Breite des Elements ändert. |
| scaleY(n) | Definiert eine 2D-Skalierungstransformation, die die Höhe des Elements ändert. |
| rotate(angle) | Definiert eine 2D-Rotation, die den Winkel im Parameter angibt. |
| skew(x-angle,y-angle) | Definiert eine 2D-Scherungstransformation entlang der X- und Y-Achsen. |
| skewX(angle) | Definiert eine 2D-Scherungstransformation entlang der X-Achse. |
| skewY(angle) | Definiert eine 2D-Scherungstransformation entlang der Y-Achse. |