[csswg-drafts] `<absolute-color-base>` not enough anymore (#9555)

svgeesus has just created a new issue for https://github.com/w3c/csswg-drafts:

== `<absolute-color-base>` not enough anymore ==
The notion of [ `<absolute-color-base>`](https://drafts.csswg.org/css-color-4/#typedef-absolute-color-base) was [introduced](https://github.com/w3c/csswg-drafts/pull/7477) to the grammar of `<color>` in CSS Color 4 to separate out problematic things like [`currentColor`]() (which can't be resolved until used-value time and depends on the value of `color` on that element and its ancestors) or [`<system-color>`](https://drafts.csswg.org/css-color-4/#typedef-system-color) which depend on light/dark mode, and forced colors mode

It [continued on in CSS Color 5](https://drafts.csswg.org/css-color-5/#color-syntax) where it is also used to exclude problematic [`device-cmyk()`](https://drafts.csswg.org/css-color-5/#device-cmyk) (which has no colorimetric basis and _might_ be resolved by an ICC profile or might be an eye-searingly inaccurate [naive color conversion](https://drafts.csswg.org/css-color-5/#cmyk-rgb)

`<absolute-color-base>` is used directly in [the grammar for the `override-colors` descriptor](https://drafts.csswg.org/css-fonts-4/#override-color) on `@font-palette-values` (to exclude `currentColor`). But there is no good reason to exclude `device-cmyk()` there.

However, this is no longer sufficient because CSS Color 5 introduces [`color-mix()`](https://drafts.csswg.org/css-color-5/#color-mix) and [Relative Color Syntax](https://drafts.csswg.org/css-color-5/#relative-colors) so what used to be a resolvable, colorimetric item like `rgb(30% 70% 20%)` could now be `rgb(from currentColor r g b)` or `color-mix(in oklab, rgb(30% 70% 20%) 40%, currentColor)`.

There is still a need to exclude certain problematic color forms for various reasons, but I am now of the opinion that doing this via formal syntax is no longer workable and the exclusion should be case-by-case in prose, instead.

/cc @fantasai @cdoublev @drott @LeaVerou because I have had discussions touching on this in various other issues and would like feedback.

Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/9555 using your GitHub account


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

Received on Thursday, 2 November 2023 16:20:14 UTC