--- title: rotate3d() slug: Web/CSS/transform-function/rotate3d() tags: - CSS - Funciones CSS - Referencia translation_of: Web/CSS/transform-function/rotate3d() ---
La función rotate3d()
de CSS define una transformación que mueve el elemento alrededor de un eje fijo sin deformarlo. La cantidad de movimiento está definida por el ángulo especificado; si es positivo, el movimiento será en el sentido de las agujas del reloj, si es negativo, será contrario a las agujas del reloj.
En el espacio tridimencional, las rotaciones tienen tres grados de libertad, que describen un ángulo de rotación. El ángulo de rotación está definido por un vector [x, y, z] y pasa por el origen (como lo define la propiedad {{ cssxref("transform-origin") }} de CSS. Si el vector no está normalizado, lo que significa que la suma del cuadrado de sus tres coordenadas no es igual a 1, el mismo será normalizado internamente. Un vector no-normalizable, como es el caso del vector nulo, [0, 0, 0], causará que la rotación no sea aplicada, sin que esto invalide la propiedad CSS en su totalidad.
La cantidad de rotación creada por rotate3d()
está especificada por tres {{cssxref("<number>")}}s y un {{cssxref("<angle>")}}. El <number>
s representa las coordenadas x, y y z del vector, denotando los ejes de la rotación. El <angle>
representa el angulo de rotación; si es positivo el movimiento será en el sentido de las agujas del reloj; si es negativo será en el sentido opuesto.
rotate3d(x, y, z, a)
<p>foo</p> <p class="transformed">bar</p>
p { width: 50px; height: 50px; background-color: teal; } .transformed{ transform: rotate3d(1,0,0,60deg); background-color: blue; }
{{EmbedLiveSample("Rotating_on_the_X-axis","100%","200")}}
<p>foo</p> <p class="transformed">bar</p>
p { width: 50px; height: 50px; background-color: teal; } .transformed{ transform: rotate3d(1, 2, -1, 192deg); background-color: blue; }
{{EmbedLiveSample("Rotating_on_a_custom_axis","100%","200")}}
Por favor vea el tipo de datos <transform-function>
para información sobre compatibilidad.