This page is Ready to Use

Notice: The WebPlatform project, supported by various stewards between 2012 and 2015, has been discontinued. This site is now available on github.



Defines a three-dimensional rotation transformation by first defining the axis of rotation as an (x,y,z) vector and then defining the angle to rotate the element around this axis. Requires four parameters: the first three are unitless numbers defining the axis vector, and the fourth is an angle measurement (specifying degrees or radians).


The following code snippet is an example of the rotate3d function in use. When applied to a square blue div element, it has the effect illustrated in the image. (The light-blue square indicates the original position of the transformed element.)

div {
   transform: rotate3d(0.7, 0.5, 0.7, 45deg);

View live example



The element rotates by the angle specified in the last parameter, and about the [x,y,z] direction vector described by the first three parameters. If the direction vector is not of unit length, it will be normalized. A direction vector that cannot be normalized, such as [0, 0, 0], results in no rotation.


rotate3d ( <number> , <number> , <number> , <angle> )


A component of the direction vector about which the element is rotated.
The angle by which the element is rotated. This value is expressed as a number followed by a supported angle unit.

Standards information

See also

Related articles


Related pages

Related pages