The skew()
CSS function defines a transformation that skews an element on the 2D plane. Its result is a <transform-function>
data type.
This transformation is a shear mapping (transvection) that distorts each point within an element by a certain angle in the horizontal and vertical directions. The coordinates of each point are modified by a value proportionate to the specified angle and the distance to the origin; thus, the farther from the origin a point is, the greater will be the value added it.
The skew()
function is specified with either one or two values, which represent the amount of skewing to be applied in each direction.
skew(ax) skew(ax, ay)
ax
<angle>
representing the angle to use to distort the element along the abscissa.ay
<angle>
representing the angle to use to distort the element along the ordinate. If not defined, its default value is 0
, resulting in a purely horizontal skewing.Cartesian coordinates on ℝ2 | Homogeneous coordinates on ℝℙ2 | Cartesian coordinates on ℝ3 | Homogeneous coordinates on ℝℙ3 |
---|---|---|---|
[1 tan(ay) tan(ax) 1 0 0] |
<div>Normal</div> <div class="skewed">Skewed</div>
div { width: 80px; height: 80px; background-color: skyblue; } .skewed { transform: skew(10deg); /* Equal to skewX(10deg) */ background-color: pink; }
<div>Normal</div> <div class="skewed">Skewed</div>
div { width: 80px; height: 80px; background-color: skyblue; } .skewed { transform: skew(10deg, 10deg); background-color: pink; }
Please see the <transform-function>
data type for compatibility info.
© 2005–2018 Mozilla Developer Network and individual contributors.
Licensed under the Creative Commons Attribution-ShareAlike License v2.5 or later.
https://developer.mozilla.org/en-US/docs/Web/CSS/transform-function/skew