In the 2D transform tutorial, we learned how to use the transform property to make 2 effects, by rotating, scaling, and skewing an element. In this tutorial, we will learn how can we use the transform property for the 3D transformation.
CSS 3D Transformation
In CSS transform property can make 3D transformation with
rotateX(), rotate()
and
rotateZ()
methods. And in this tutorial, you will learn how to use all these three methods with transform property.
Note : Old web-browses do not support transform property so make sure that you have the latest version. The CSS transform property can accept 3 methods for the 3D transformation.
-
rotateX()
-
rotateY()
-
rotateZ()
CSS transform property rotateX() method
The
rotateX()
method accepts a degree value as a parameter and rotate the element box around the X-axis.
Example
Rotate the element box around X-axis when the user hovers over it.
<!DOCTYPE html>
<html>
<head>
<style>
div{
width: 100px;
height:100px;
background-color: red;
border: 2px solid black;
}
div:hover{
transform: rotateX(170deg);
}
</style>
</head>
<body>
<div>Rotate X-Axis</div>
</body>
</html>
CSS transform property rotateY() method
The
rotateY()
method rotates the element box around the Y-axis based on the specified degree.
Example
Rotate the element box around Y-axis when the user hovers over it.
<!DOCTYPE html>
<html>
<head>
<style>
div{
width: 100px;
height:100px;
background-color: red;
border: 2px solid black;
}
div:hover{
transform: rotateY(150deg);
}
</style>
</head>
<body>
<div>Rotate Y-Axis</div>
</body>
</html>
CSS transform property rotateZ() method
The
rotateZ()
method accepts the degree value as a parameter and rotates the box element around the Z direction according to the specified degree.
Example
Rotate the element box around Z-axis when the user hovers over it.
<!DOCTYPE html>
<html>
<head>
<style>
div{
width: 100px;
height:100px;
background-color: red;
border: 2px solid black;
}
div:hover{
transform: rotateZ(150deg);
}
</style>
</head>
<body>
<div>Rotate Z-Axis</div>
</body>
</html>
CSS transform property rotate3D() method
The
rotate3d()
method is a shorthand method for all the methods mentioned above. Using this method, we can specify the X-axis, Y-axis, and Z-axis along with the degree of rotation for the element.
Example
<!DOCTYPE html>
<html>
<head>
<style>
div{
width: 100px;
height:100px;
background-color: red;
border: 2px solid black;
}
div:hover{
transform: rotate3d(20,40,50,110deg);
}
</style>
</head>
<body>
<div>Rotate Z-Axis</div>
</body>
</html>
Summary
-
The
transform
property can also be used to define 3D transformation by rotating an element box around different axes. -
The
rotateX()
method rotates the element around X-axis. -
The
rotateY()
method rotates the element around Y-axis. -
The
rotateZ()
method rotates the element around Z-axis.