skew()
Quick Summary for skew()
The skew() CSS function defines a transformation that skews an element on the 2D plane. Its result is a <transform-function> data type.
Code Usage for skew()
skew(ax)  skew(ax, ay) 
More Details for skew()

skew()

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 effect is as if you grabbed each corner of the element and pulled them along a certain angle.

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 the value added to it.

Syntax

The skew() function is specified with either one or two values, which represent the amount of skewing to be applied in each direction. If you only specify one value it is used for the x-axis and there will be no skewing on the y-axis.

skew(ax)  skew(ax, ay) 

Values

ax

Is an <angle> representing the angle to use to distort the element along the x-axis (or abscissa).

ay

Is an <angle> representing the angle to use to distort the element along the y-axis (or 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 ( ax ) tan ( ay ) 1 ) ( 1 tan ( ax ) 0 tan ( ay ) 1 0 0 0 1 ) ( 1 tan ( ax ) 0 tan ( ay ) 1 0 0 0 1 ) ( 1 tan ( ax ) 0 0 tan ( ay ) 1 0 0 0 0 1 0 0 0 0 1 )
[1 tan(ay) tan(ax) 1 0 0]

Examples

Skewing on the x-axis only

HTML
<div>Normal</div> <div class="skewed">Skewed</div> 
CSS
body {   margin: 20px; }  div {   width: 80px;   height: 80px;   background-color: skyblue; }  .skewed {   transform: skew(10deg); /* Equal to skewX(10deg) */   background-color: pink; } 
Result

Skewing on both axes

HTML
<div>Normal</div> <div class="skewed">Skewed</div> 
CSS
body {   margin: 20px; }  div {   width: 80px;   height: 80px;   background-color: skyblue; }  .skewed {   transform: skew(10deg, 10deg);   background-color: pink; } 
Result

Specifications

Specification
CSS Transforms Module Level 1 # funcdef-transform-skew

See also

transform <transform-function> skewX() skewY()

Last modified: Jan 31, 2022, by MDN contributors

Select your preferred language English (US)Français日本語Русский中文 (简体) Change language

No Items Found.

Add Comment
Type in a Nick Name here
 
Other Categories in CSS
css
Search CSS
Search CSS by entering your search text above.
Welcome

This is my test area for webdev. I keep a collection of code here, mostly for my reference. Also if i find a good link, i usually add it here and then forget about it. more...

You could also follow me on twitter. I have a couple of youtube channels if you want to see some video related content. RuneScape 3, Minecraft and also a coding channel here Web Dev.

If you found something useful or like my work, you can buy me a coffee here. Mmm Coffee. ☕

❤️👩‍💻🎮

🪦 2000 - 16 Oct 2022 - Boots
Random Quote
Our brains are wired to find things we are looking for - if your always cynical or waiting for things to go wrong, then your life will reflect that. On the other hand, having a positive outlook on life will bring you joy and provide you with inspiration when you least expect it ☀️🍉🌴
Unknown
Random CSS Property

@viewport

Deprecated: This feature is no longer recommended. Though some browsers might still support it, it may have already been removed from the relevant web standards, may be in the process of being dropped, or may only be kept for compatibility purposes. Avoid using it, and update existing code if possible; see the compatibility table at the bottom of this page to guide your decision. Be aware that this feature may cease to work at any time.
orientation (@viewport) css reference