Skip to main content

CSS 3D Transforms

CSS 3D Transforms​

CSS also supports 3D transformations.

CSS 3D Transforms Methods​

With the CSS transform property you can use the following 3D transformation methods:

  • rotateX()
  • rotateY()
  • rotateZ()

But there are other methods that you can use:

FunctionDescription
matrix3d (n,n,n,n,n,n,n,n,n,n,n,n,n,n,n,n)Defines a 3D transformation, using a 4x4 matrix of 16 values
translate3d(x,y,z)Defines a 3D translation
translateX(x)Defines a 3D translation, using only the value for the X-axis
translateY(y)Defines a 3D translation, using only the value for the Y-axis
translateZ(z)Defines a 3D translation, using only the value for the Z-axis
scale3d(x,y,z)Defines a 3D scale transformation
scaleX(x)Defines a 3D scale transformation by giving a value for the X-axis
scaleY(y)Defines a 3D scale transformation by giving a value for the Y-axis
scaleZ(z)Defines a 3D scale transformation by giving a value for the Z-axis
rotate3d(x,y,z,angle)Defines a 3D rotation
rotateX(angle)Defines a 3D rotation along the X-axis
rotateY(angle)Defines a 3D rotation along the Y-axis
rotateZ(angle)Defines a 3D rotation along the Z-axis
perspective(n)Defines a perspective view for a 3D transformed element

The rotateX() Method​

The rotateX() method rotates an element around its X-axis at a given degree:

#myDiv {
transform: rotateX(150deg);
}

The rotateY() Method​

The rotateY() method rotates an element around its Y-axis at a given degree:

#myDiv {
transform: rotateY(150deg);
}

The rotateZ() Method​

The rotateZ() method rotates an element around its Z-axis at a given degree:

#myDiv {
transform: rotateZ(90deg);
}

Other 3D transform properties​

PropertyDescription
transformApplies a 2D or 3D transformation to an element
transform-originAllows you to change the position on transformed elements
transform-styleSpecifies how nested elements are rendered in 3D space
perspectiveSpecifies the perspective on how 3D elements are viewed
perspective-originSpecifies the bottom position of 3D elements
backface-visibilityDefines whether or not an element should be visible when not facing the screen