rotate()
Baseline Widely available
This feature is well established and works across many devices and browser versions. It’s been available across browsers since September 2015.
Die rotate()
CSS Funktion definiert eine Transformation, die ein Element um einen festen Punkt in der 2D-Ebene dreht, ohne es zu verformen. Das Ergebnis ist ein <transform-function>
Datentyp.
Probieren Sie es aus
Der feste Punkt, um den das Element rotiert – wie oben erwähnt – wird auch als Transformationsursprung bezeichnet. Dieser ist standardmäßig das Zentrum des Elements, aber Sie können Ihren eigenen Transformationsursprung mit der transform-origin
Eigenschaft festlegen.
Syntax
Der durch rotate()
erzeugte Rotationsbetrag wird durch einen <angle>
angegeben. Ist dieser positiv, erfolgt die Bewegung im Uhrzeigersinn; ist er negativ, erfolgt sie gegen den Uhrzeigersinn. Eine Drehung um 180° wird als Punktspiegelung bezeichnet.
rotate(a)
Werte
- a
-
Ist ein
<angle>
und repräsentiert den Winkel der Drehung. Die Drehrichtung hängt von der Schreibrichtung ab. In einem links-nach-rechts-Kontext bedeutet ein positiver Winkel eine Drehung im Uhrzeigersinn, ein negativer Winkel eine gegen den Uhrzeigersinn. In einem rechts-nach-links-Kontext bedeutet ein positiver Winkel eine Drehung gegen den Uhrzeigersinn, ein negativer eine im Uhrzeigersinn.
Kartesische Koordinaten in ℝ^2 | Homogene Koordinaten in ℝℙ^2 | Kartesische Koordinaten in ℝ^3 | Homogene Koordinaten in ℝℙ^3 |
---|---|---|---|
[cos(a) sin(a) -sin(a) cos(a) 0 0] |
Formale Syntax
Beispiele
Einfaches Beispiel
HTML
<div>Normal</div>
<div class="rotated">Rotated</div>
CSS
div {
width: 80px;
height: 80px;
background-color: skyblue;
}
.rotated {
transform: rotate(45deg); /* Equal to rotateZ(45deg) */
background-color: pink;
}
Ergebnis
Kombination von Drehung mit einer anderen Transformation
Wenn Sie mehrere Transformationen auf ein Element anwenden möchten, achten Sie auf die Reihenfolge, in der Sie Ihre Transformationen angeben. Beispielsweise, wenn Sie zuerst drehen und dann übersetzen, erfolgt die Übersetzung entlang der neuen Rotationsachse!
HTML
<div>Normal</div>
<div class="rotate">Rotated</div>
<div class="rotate-translate">Rotated + Translated</div>
<div class="translate-rotate">Translated + Rotated</div>
CSS
div {
position: absolute;
left: 40px;
top: 40px;
width: 100px;
height: 100px;
background-color: lightgray;
}
.rotate {
background-color: transparent;
outline: 2px dashed;
transform: rotate(45deg);
}
.rotate-translate {
background-color: pink;
transform: rotate(45deg) translateX(180px);
}
.translate-rotate {
background-color: gold;
transform: translateX(180px) rotate(45deg);
}
Ergebnis
Spezifikationen
Specification |
---|
CSS Transforms Module Level 1 # funcdef-transform-rotate |
Browser-Kompatibilität
BCD tables only load in the browser
Siehe auch
transform
Eigenschaftrotate
Eigenschaft<transform-function>
rotate3d()