RE: [css3-transform] definition of skewing

I agree that if you want to follow the SVG spec, skew is well defined.
Why would you object to have 2 parameters for rotate? It seems like a useful effect to have and not that different from the existing rotate.
Rotate(45, 45) would result in the same effect as rotate(45)

The spec still says that skew(x, y) is still valid so maybe it should be updated.

Rik

From: Simon Fraser [mailto:smfr@me.com]
Sent: Wednesday, January 12, 2011 9:38 PM
To: Rik Cabanier
Cc: www-style@w3.org
Subject: Re: [css3-transform] definition of skewing

On Jan 12, 2011, at 8:52 PM, Rik Cabanier wrote:


All,

It seems that the definition of skew in the CSS transform is a little odd.
http://www.w3.org/TR/SVG/coords.html#SkewXDefined contains the definition of skewx and skewy. As you can see, the calculation is using 'tan(a)'.
This means that is you have a skew from 45 to 135 degrees, the animated content will stretch as well as skew.
It seems that this is not really the desired behavior...

If it is, I would like to propose that we extend the 'rotate' transform to take an additional parameter.
Ie rotate(45deg, 55deg) would rotate the x-axies by 45 degrees and the y-axis by 55.
I think that is a more natural use of skew.

We used to have skew(x, y), but see this message and followups on why that was removed:
<http://lists.w3.org/Archives/Public/www-style/2009Mar/0287.html>

I object to re-using rotate() to do this kind of skewing. It's really a different operation to rotation.

skew(angle) is well-defined by SVG <http://www.w3.org/TR/SVG/coords.html#EstablishingANewUserSpace> and we follow that definition for CSS.

Simon

Received on Thursday, 13 January 2011 05:59:28 UTC