Re: Linear gradients, Transforms and angles...

On Sep 23, 2010, at 0:13 , Brad Kemper wrote:

>> CSS is a language in which you express geometric concepts textually, not wysiwyg.  
> 
> Not always true. Many people only deal with it through an interface of a tool, such as Adobe DreamWeaver, Apple iWeb, etc.

Those tools are free to abstract and 'simplify' in any way they wish.  I'm quite sure that programmers who can write a wysiwyg CSS editor can handle it.

>> I think users want rotations (transforms) and gradients to be consistent --
> 
> Well, you do, clearly, any way.

Consistency within a specification is way more important than rough consistency with other tools and other systems.

> 
>> that two, at 45º, go the same way.  
> 
> They don't. One goes in a straight direction, the other goes in a circular direction.
> 

I have no idea what you mean by this.  We're talking about an element rotated by X, and an element with a gradient rotated by X.  Not radial gradients.

>> not have to remember that there are two somewhat intuitive, but different, conventions at work depending on what they are working with.

> 
> That is exactly what you are asking designers and other authors to do when they use normal angle notation everywhere in life except CSS, SVG, and Canvas.

I am asking for the spec. to be consistent within itself.  Consistency with other systems is secondary.

> The convention of saying that a 45° angle goes from lower-left to upper-right is much older than any of those, and is what most people will expect. You want to use a different convention for CSS, because of some reason of mathematical purity in regard to the direction of the Y axis, which I could care less about.

(could care less -> could not care less, I suspect.)

This is about having a specification in which coordinates, axes, rotations, and the like, are consistently specified.  Mathematical purity and consistency are also important, but less so.  Matching wysiwyg tools is less so.

It seems that your basic beef may be with someone in the mists of time who decided that on computers the visual Y axis goes downward; but it's too late to change that (or even find the culprit).

> I just want to use the angles that are most familiar to me (and others like me) for specifying linear direction.


Then use a wysiswyg tool that makes the transform, since you want consistency with wysiwyg tools.

Either way we decide, we'll probably need a note, by the way.  "Warning, linear gradient angles in CSS are specified in the CSS coordinate system in which the Y axis is downwards, and hence a 45º gradient also goes downward from the horizontal."  "Warning, linear gradient angles are specified in CSS on a different coordinate system from the rest of the specification; a 45º gradient goes upward, away from the Y axis, which goes downward, and a 45º gradient and a 45º rotation are therefore at 90º to each other."


David Singer
Multimedia and Software Standards, Apple Inc.

Received on Thursday, 23 September 2010 16:40:59 UTC