CSS transform Property
Example
Rotate, skew, and scale three different <div> elements:
div.a {
transform: rotate(20deg);
}
div.b {
transform: skewY(20deg);
}
div.c {
transform: scaleY(1.5);
}
Try it Yourself »
Definition and Usage
The transform
property applies a 2D or 3D transformation to an element. This property allows you to rotate,
scale, move, skew, etc., elements.
Default value: | none |
---|---|
Inherited: | no |
Animatable: | yes. Read about animatable Try it |
Version: | CSS3 |
JavaScript syntax: | object.style.transform="rotate(7deg)" Try it |
Browser Support
The numbers in the table specify the first browser version that fully supports the property.
Numbers followed by -webkit-, -moz-, or -o- specify the first version that worked with a prefix.
Property | |||||
---|---|---|---|---|---|
transform (2D) | 36.0 4.0 -webkit- |
10.0 9.0 -ms- |
16.0 3.5 -moz- |
9.0 3.2 -webkit- |
23.0 15.0 -webkit- 10.5 -o- |
transform (3D) | 36.0 12.0 -webkit- |
12.0 | 10.0 | 9.0 4.0 -webkit- |
23.0 15.0 -webkit- |
Syntax
transform: none|transform-functions|initial|inherit;
Property Values
Value | Description | Demo |
---|---|---|
none | Defines that there should be no transformation | Demo ❯ |
matrix(n,n,n,n,n,n) | Defines a 2D transformation, using a matrix of six values | Demo ❯ |
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 | |
translate(x,y) | Defines a 2D translation | Demo ❯ |
translate3d(x,y,z) | Defines a 3D translation | |
translateX(x) | Defines a translation, using only the value for the X-axis | |
translateY(y) | Defines a translation, using only the value for the Y-axis | |
translateZ(z) | Defines a 3D translation, using only the value for the Z-axis | |
scale(x,y) | Defines a 2D scale transformation | Demo ❯ |
scale3d(x,y,z) | Defines a 3D scale transformation | |
scaleX(x) | Defines a scale transformation by giving a value for the X-axis | |
scaleY(y) | Defines a 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 | |
rotate(angle) | Defines a 2D rotation, the angle is specified in the parameter | Demo ❯ |
rotate3d(x,y,z,angle) | Defines a 3D rotation | |
rotateX(angle) | Defines a 3D rotation along the X-axis | Demo ❯ |
rotateY(angle) | Defines a 3D rotation along the Y-axis | Demo ❯ |
rotateZ(angle) | Defines a 3D rotation along the Z-axis | |
skew(x-angle,y-angle) | Defines a 2D skew transformation along the X- and the Y-axis | Demo ❯ |
skewX(angle) | Defines a 2D skew transformation along the X-axis | Demo ❯ |
skewY(angle) | Defines a 2D skew transformation along the Y-axis | Demo ❯ |
perspective(n) | Defines a perspective view for a 3D transformed element | |
initial | Sets this property to its default value. Read about initial | |
inherit | Inherits this property from its parent element. Read about inherit |
More Examples
Images
thrown on the table
This example demonstrates how to create "polaroid" pictures and rotate the
pictures.
Related Pages
CSS tutorial: CSS 2D Transforms
CSS tutorial: CSS 3D Transforms
HTML DOM reference: transform property