Re: [css3-background] border-radius color transitions using gradients recommended but undefined

On 02/24/2010 07:12 AM, Sylvain Galineau wrote:
> Elika,
>
> Our position, currently, remains d). Was that really unclear ?

Given that on the 3 February 2010 teleconference you said
     Sylvain: I'm ok with 2 or 3
where
   2. Drop recommendation for gradient, leave transition undefined
   3. Recommend gradient, define color stops
and nowhere in this thread did you state that you have changed
your position, yes, it was really unclear.

> Now, I would at least appreciate you giving us the courtesy of answering
> our questions. One of those, from the very beginning, was and remains:
> how is this behavior going to be tested in the test suite ? What does
> the typical testcase look like ?
>
> Does the testcase simplay say: "these corners should be rounded and
> there should be a color gradient in them ?"

The corner shape would be tested thoroughly by other testcases. (Its
shape is precisely and mathematically defined, so I assume you are
already satisfied with the spec there and therefore don't need an
explanation here.)

As for the color transition, the testcase would probably say something
like
   "There should be a gradual transition in color along the curve below
    from teal [show teal block] on the left to orange [show orange block]
    on the bottom. There should not be any patches of solid color."
for
   border-width: 20px;
   border-radius: 40px;
   width: 20px; height: 20px; /* show just the curved part */
   border-style: solid solid none none; /* top and right border join */
   border-color: teal orange transparent transparent;

> Is that it ?

There would probably also be some tests that isolate (via masking)
the non-transitional parts of the border and require that they have
a consistent color, i.e. that the gradient does not spill out of
the transitional area. (This part could be reftested, actually.)

If we adopt wording on color stops, then there would be additional
tests to require that the color at the stop is as expected, e.g.
   "There should be no abrupt changes in color in the shape below."
for
   border-radius: 40px;
   border-width: 20px;
   width: 30px; height: 30px; /* show part of the straight sides */
   border-style: solid solid none none; /* top and right border join */
   border-color: teal orange transparent transparent;

> Is that enough  for interop purposes ?

Yes.

> Why ?

Because very few people care what the color interpolation function is,
and given that there don't seem to be very many libraries that do
conical gradients, it's unlikely that we can require a particular
color interpolation function. The specs do allow some differences
among UAs: line breaking and underline position and thickness are two
  examples. I think the color interpolation function should also remain
undefined, so that the UA may use whatever library is available.

>...
> we prefer to keep it opt-in.
>
> I still await a clear explanation as to why that outcome is unacceptable.
> Assertions that it is unacceptable are insufficient.

"opt-in" that requires additional features to be added to the standards
to trigger gradient transitions is unacceptable because the default
behavior should be what 80%+ of authors want to be the default, and
sharp color transitions is not it.

~fantasai

Received on Wednesday, 24 February 2010 21:54:56 UTC