Durch Modifizierung des Koordinatenraums ändern CSS Transformationen den Umriss und die Position des betreffenden Inhalts ohne den normalen Dokumentfluss zu unterbrechen. Diese Anleitung bietet eine Einführung in die Verwendung von Transformationen.
CSS Transformationen sind als eine Reihe von CSS Eigenschaften implementiert, die es erlauben, affine lineare Transformationen auf HTML Elemente anzuwenden. Diese Transformationen beinhalten Drehung, Verzerrung, Skalierung und Verschiebung sowohl im ebenen als auch im 3D Raum.
CSS Transformationseigenschaften
Zwei Haupteigenschaften werden dazu verwendet, CSS Transformationen zu definieren: transform
und transform-origin
.
transform-origin
- Bestimmt die Position des Ursprungs. Standardmäßig ist dieser in der Mitte des Elements und kann verschoben werden. Er wird von mehreren Transformationen verwendet wie Drehung, Skalierung oder Verzerrung, die einen bestimmten Punkt als Parameter benötigen.
transform
- Bestimmt die Transformationen, die auf das Element angewendet werden. Sie ist eine leerzeichenseparierte Liste von Transformationen, welche eine nach der anderen angewendet werden, wie durch die Zusammensetzungsoperation verlangt.
Beispiele
Drehung
Dieses Beispiel erstellt einen iframe, der Googles Homepage beinhaltet, die um 90 Grad um die linke untere Ecke gedreht wurde.
Livebeispiel ansehen Screenshot des Beispiels ansehen
<div style="transform: rotate(90deg); transform-origin: bottom left;"> <iframe src="https://www.google.com/" width="500" height="600"></iframe> </div>
Verzerrung und Verschiebung
Dieses Beispiel erstellt einen iframe, der Googles Homepage beinhaltet, verzerrt um 10 Grad und verschoben um 150 Pixel auf der x-Achse.
Livebeispiel ansehen Screenshot des Beispiels ansehen
<div style="transform: skewx(10deg) translatex(150px); transform-origin: bottom left;"> <iframe src="https://www.google.com/" width="600" height="500"></iframe> </div>
3D-spezifische CSS Eigenschaften
Die Anwendung von CSS Transformationen im dreidimensionalen Raum ist ein wenig komplexer. Zunächst muss der 3D Raum konfiguriert werden, indem ihm eine Perspektive gegeben wird. Anschließend muss konfiguriert werden, wie die 2D Elemente sich in diesem Raum verhalten.
Eine Perspektive einrichten
Das erste Element ist das Setzen der Perspektive. Die Perspektive ist, was den dreidimensionalen Eindruck vermittelt. Je weiter weg Elemente vom Betrachter sind, desto kleiner sind sie.
Wie schnell sie kleiner werden, wird durch die perspective
Eigenschaft bestimmt. Je kleiner deren Wert ist, desto tiefer ist die Perspektive.
perspective:0; |
perspective:250px; |
---|---|
1
2
3
4
5
6
|
1
2
3
4
5
6
|
perspective:300px; |
perspective:350px; |
---|---|
1
2
3
4
5
6
|
1
2
3
4
5
6
|
Das zweite Element ist die Konfiguration der Position des Betrachters mittels der perspective-origin
Eigenschaft. Standardmäßig ist die Perspektive auf den Betrachter zentriert, was nicht immer passend ist.
perspective-origin:150px 150px; |
perspective-origin:50% 50%; |
perspective-origin:-50px -50px; |
---|---|---|
1
2
3
4
5
6
|
1
2
3
4
5
6
|
1
2
3
4
5
6
|
Sobald dies getan ist, kann mit der Arbeit am Element im dreidimensionalen Raum begonnen werden.
Siehe auch
- Gerätausrichtung mit 3D Transformationen verwenden
- Einführung in CSS 3D Transformationen (Blogeintrag von David DeSandro in Englisch)