RE: [css3-images] linear-gradient keywords and angles are opposite



[Tab Atkins:] 
> On Wed, Jun 8, 2011 at 4:27 AM, Brad Kemper <brad.kemper@gmail.com> wrote:
> > On Jun 7, 2011, at 11:34 AM, Brian Manthos <brianman@microsoft.com>
> wrote:
> >> Paraphrasing [1]:
> >> When specified via angle, the angle can be understood as both the
> >> direction ("toward the <angle>") and the ending point ("ends at
> <angle>").
> >>
> >> Paraphrasing [2] and [3]:
> >> When specified via keyword, the keyword can be understood as both
> >> opposite direction ("away from the <keyword(s)>") and the starting
> >> point ("starts at
> >>  <keyword>").
> >>
> >> Is it intentional that these two ways of specifying gradient-line are
> >> opposite?
> >
> > I don't think they are. In [1], the angle determines the starting AND
> > ending points. In [2] and [3], the ending point (and thus the
> > direction) is determined by the starting point. I see no inconsistency.
> 
> This was brought up during the ftf, and I think it's a valid point.
> 
> In my head (and I expect in others'), when I think of what angle to use
> for a gradient I do so by imagining a compass rose, with 0deg at the top,
> 90deg to the right, etc.  I then set the gradient angle by choosing which
> angle I want the gradient to point toward.
> 
> Similarly, if I imagine keywords, I do so with 'top' at the top, 'right'
> at the right, etc.  Now, though, I have to reverse how I deal with my
> mental image - if I want the gradient to point up, I don't choose 'top', I
> choose 'bottom'.
> 
> I'm not sure if this is an important enough disconnect to justify changing
> the keywords, but we brainstormed it a bit at the ftf.  I don't think we
> came up with any set of directional keywords that was sufficiently decent
> to work as replacements, though.  If anyone has any suggestions, please
> speak up!  The current front-runner is 'upward'/'rightward'/etc, which
> isn't very good.

Right; to expand on some of the feedback given at the f2f, it helps to think
of animating or transitioning gradients in order to understand the disconnect.

A safe - I think - working assumption is that CSS authors are very familiar
with top/right/bottom/left and the spatial relationship between them. The 
question is whether the following would be natural to web authors: that 
transitioning a linear gradient from 0deg to 90deg is equivalent on the keyword 
side to going from bottom to left. 

In other words, given North==0deg and East==90deg, should transitioning from
North to East be doable by transitioning from top to right ? I think many would 
answer this question in the affirmative. (And would love to see a poll on the
question similar to the one done for the bearing angle issue).

That top is a starting point but 0deg an end point is inconsistent; the inconsistency
is hard to justify and even more confusing once animations are involved.

Received on Wednesday, 8 June 2011 17:00:28 UTC