Re: [csswg-drafts] [css-color-5] When mixing hue, there are two ways round the hue range (#4735)

> does that mean that hsl(), lch() etc. will not normalize their hue to the interval [0, 360)

Correct. Normalization happens as a first stage of interpolation. The specified value of an `hsl()`color is as specified, including angles outside [0,360). The computed value is `rgb()`.

I thought that the specification was clear about hue angles outside the range [0, 360) but it isn't.

The existence and validity of such angles is [mentioned in passing for LCH](https://drafts.csswg.org/css-color-4/#funcdef-lch):

> The third argument is the hue angle. It’s interpreted similarly to the <hue> argument of hsl(), but doesn’t map hues to angles in the same way because they are evenly spaced perceptually. Instead, 0deg points along the positive "a" axis (toward purplish red), (as does 360deg, 720deg, etc.); 90deg points along the positive "b" axis (toward mustard yellow), 180deg points along the negative "a" axis (toward greenish cyan), and 270deg points along the negative "b" axis (toward sky blue).

and, again [in passing, for HSL](https://drafts.csswg.org/css-color-4/#the-hsl-notation):

> In HSL (and HWB) the angle 0deg represents sRGB primary red (as does 360deg, 720deg, etc.), and the rest of the hues are spread around the circle, so 120deg represents sRGB primary green, 240deg represents sRGB primary blue, etc.

However the [main section on the `<hue>` type](https://drafts.csswg.org/css-color-4/#hue-syntax)  is entirely silent on this. It should be explicit.



-- 
GitHub Notification of comment by svgeesus
Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/4735#issuecomment-774399805 using your GitHub account


-- 
Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config

Received on Saturday, 6 February 2021 04:57:00 UTC