CSS3 Transform

CSS3 Transformer sind Teil der W3C-CSS3 Recommendation.
Die neue Eigenschaft transform bestimmt, wie das angesprochene Element transformiert / verändert werden soll. Sie ermöglicht lineare Transformationen von Elementen. Wir können Elemente verschieben, rotieren, skalieren oder neigen.

Text ohne Sinn
(*^_^*)/

Transformation Funktionen

Neue Browser unterstützen diese Definitionen. Webkit- und Mozilla-Browser benötigen ein Präfix.

translate(<translation-value>[, <translation-value>])
translateX(<translation-value>)
translateY(<translation-value>)

scale(<number>[, <number>])
scaleX(<number>)
scaleY(<number>)

rotate(<angle>)

skew(<angle> [, <angle>])  MDN says: do not use, use skewX/skewY resp. matrix()
skewX(<angle>)
skewY(<angle>) 

Transformation Beispiele

content

translate verschiebt hier das Element um 20px in beide Richtungen (X- und Y-Achse).
.trnl { transform: translate(20px, 20px); }

.
content

rotate das Element wird um die Z-Achse in Uhrzeiger-Richtung gedreht. Minuswerte drehen das Element in die andere Richtung.
.roat { transform: rotate(50deg); }

.
content

scale skaliert hier das Element um 150%. Minuswerte sind auch möglich.
.skl { transform: scale(1.5, 1.5) }

.
content

skew neigt die Fläche im angegebenen Winkel und der definierten Richtung.
.skw { transform: skewX(40deg) skewY(20deg); }

.

Browser Syntax

skew(<x-angle>, <y-angle>) wird noch unterstützt, ist aber in der aktuellen CSS3-Spezifikation zu Gunsten von skewX() resp. skewY() (oder der matrix-Funktion) entfernt worden, vgl. MDN: "The skew() function was present in early drafts. It has been removed but is still present in some implementations. Do not use it. Use skewX/skewY resp the matrix-function".

skewX(<angle>); 
skewY(<angle>);
Deprecated: skew(<x-angle>, <y-angle>);

.skw { 
-webkit-transform: skewX(40deg) skewY(20deg);
   -moz-transform: skewX(40deg) skewY(20deg);
     -o-transform: skewX(40deg) skewY(20deg); 
        transform: skewX(40deg) skewY(20deg);
}
/* FFox auch ohne Prefix ab v.16+ */

Alle Transformation Funktionen können kombiniert werden.

.all {
transform: translate(50px, 50px) scale(1.5, 1.5) rotate(25deg);
}