{{CSSRef}}
The translate3d()
CSS function moves the position of the element in the 3D space. This transformation is characterized by a 3-dimension vector whose coordinates define how much it moves in each direction.
Syntax
translate3d(tx, ty, tz)
Values
- tx
- Is a {{cssxref("<length>")}} representing the abscissa of the translating vector.
- ty
- Is a {{cssxref("<length>")}} representing the ordinate of the translating vector.
- tz
- Is a {{cssxref("<length>")}} representing the z component of the translating vector. It can't be a {{cssxref("<percentage>")}} value; in that case the property containing the transform is considered invalid.
Cartesian coordinates on ℝ2 | Homogeneous coordinates on ℝℙ2 | Cartesian coordinates on ℝ3 | Homogeneous coordinates on ℝℙ3 |
---|---|---|---|
This transform applies to the 3D space and cannot be represented on the plane. |
A translation is not a linear transform in ℝ3 and cannot be represented using a matrix in the Cartesian coordinates system. |
Examples
Using a single axis translation
HTML
<p>foo</p> <p class="transformed">bar</p> <p>foo</p>
CSS
p { width: 50px; height: 50px; background-color: teal; } .transformed { transform: perspective(500px) translate3d(10px,0px,0px); /* equivalent to perspective(500px) translateX(10px)*/ background-color: blue; }
Result
{{EmbedLiveSample("Using_a_single_axis_translation","100%","250")}}
Combining z-axis and x-axis translation
HTML
<p>foo</p> <p class="transformed">bar</p> <p>foo</p>
CSS
p { width: 50px; height: 50px; background-color: teal; } .transformed { transform: perspective(500px) translate3d(10px,0px,100px); background-color: blue; }
Result
{{EmbedLiveSample("Combining_z-axis_and_x-axis_translation","100%","250")}}