- From: CSS Meeting Bot via GitHub <noreply@w3.org>
- Date: Wed, 30 Jul 2025 16:32:11 +0000
- To: public-css-archive@w3.org
The CSS Working Group just discussed ``[css-text-decor-3] Clarify expected computed value for `text-decoration` and similar shorthands (can we omit resolved `currentColor`?)``, and agreed to the following: * `RESOLVED: If multiple values are omittable in serialization, but at least one is required, choose the first one in grammar order unless constrained by compat.` * `RESOLVED: If a <color> value is omittable when computed to currentColor, then it is omittable even though the resolved value is not the 'currentColor' keyword (because colors are absolutized), unless constrained by compat.` <details><summary>The full IRC log of that discussion</summary> <ydaniv> fantasai: text-decoration, like background and other shorthands accepts color and other values<br> <ydaniv> ... when we serialize color we actually return the resolved color, not currentColor<br> <ydaniv> ... so serializing the currentColor of text-decoration, we actually need to compute and serialize<br> <ydaniv> ... it's not backward compat and not adding useful information to seralize the color value<br> <oriol> q+<br> <ydaniv> ... so we're proposing that text-decoration color is currentColor, which is the initial value, it does not serialize the color just the value<br> <emilio> q<br> <emilio> q+<br> <fantasai> s/the value/the text-decoration-line value/<br> <ydaniv> oriol: wanted to mention that on another issue I saw similar things, it's other shorthands as well<br> <ydaniv> ... would like a more general resolution, that there are minimal possible posibilities we could choose from<br> <ydaniv> ... so in we do not include color if it's the initial value<br> <Rossen2> ack oriol<br> <Rossen2> ack emeyer<br> <Rossen2> ack emilio<br> <Rossen2> q?<br> <ydaniv> emilio: we discussed similar things for shorthands, like margins, where we do want the resolved value<br> <Rossen2> Zakim, start meeting<br> <Zakim> inviting RRSAgent<br> <Zakim> RRSAgent, make logs Public<br> <Zakim> Meeting: Cascading Style Sheets (CSS) Working Group Teleconference<br> <RRSAgent> logging to https://www.w3.org/2025/07/30-css-irc<br> <RRSAgent> I have made the request, Zakim<br> <Rossen2> q?<br> <ydaniv> ... it's a bit incossitent for length and not color<br> <ydaniv> ... not super concerned, but a bit wierd<br> <ydaniv> fantasai: emilio do you have an example?<br> <ydaniv> emilio: like computedStyle.inset from shorthand, you get the computed and serialize<br> <oriol> I think emilio is talking about https://github.com/w3c/csswg-drafts/issues/11382<br> <ydaniv> ... and in text-decoration it's not the inital value<br> <ydaniv> fantasai: 2 things here: 1. when there are multiple possibilites, then we <missed><br> <ydaniv> ... then we keep the first grammar term and skip the others<br> <ydaniv> ... 2. there are some cases where the initial value, ommitable, is not the resolved value because it's further computed than the actual one<br> <ydaniv> ... so do we still omit it? is it still omittable?<br> <lea> q?<br> <ydaniv> ... I think for colors it's nicer to omit them, when it's an initial value<br> <ydaniv> ... I think it makes sense to follow the example oriol mentioned<br> <ydaniv> ... I think to adopt it as a principle<br> <ydaniv> ... I think we want to audit it, to make sure we don't make special exceptions<br> <ydaniv> ... I don't know if following this rule will get us into backward compat issue<br> <ydaniv> ... for text-decoration we should resolve that, to omit text-decoration-color<br> <ydaniv> Rossen2: last sentence was clear (:<br> <fantasai> s/compat issue/compat issue for older shorthands, e.g. background/<br> <ydaniv> lea: so what is the proposal?<br> <ydaniv> fantasai: when text-decoration-color is currentColor it's omitted in favour of text-decoration-line<br> <florian> +1<br> <ntim> p+<br> <lea> +1<br> <ydaniv> lea: assuming it's entirely about the shorthand, and longhand would yield computed?<br> <ydaniv> fantasai: yes<br> <ydaniv> lea: would it roundtrip correctly?<br> <ydaniv> fantasai: <missed><br> <ydaniv> lea: there are some wierdness around :visited, right?<br> <ydaniv> fantasai: won't talk about that<br> <lea> yeah, strong +1<br> <ydaniv> Rossen2: seeing +1's starting to add up<br> <fantasai> s/<missed>/it'll round-trip better than with the behavior of serializing out the resolved color/<br> <oriol> q+<br> <Rossen2> ack oriol<br> <fantasai> The case where the behavior differs is if you tweak 'color' in the middle of the round trip<br> <ntim> (not sure if p+ is right)<br> <ydaniv> oriol: small point, proposed text, that if t-d-line is set to initial value, but t-d-style is set to value other than initial then it could be -style, right?<br> <ydaniv> fantasai: correct<br> <fantasai> This is a good clarification<br> <ydaniv> Rossen2: can we get a resolution?<br> <ydaniv> florian: more about the generalization stuff<br> <ydaniv> ... we should resolve<br> <ydaniv> Rossen2: any objections?<br> <ydaniv> florian: there is text, but the generalized one is awkward<br> <ydaniv> ... in this case it's in grammar order, but do we want to be specific? or generalize?<br> <ydaniv> fantasai: to make t-d we need to generalize<br> <ydaniv> ... we need to make sure that it's backwards compat, when there are multiple ones, we pick the first one in the specified order<br> <ntim> (web compat is relevant here since Safari doesn't ship the proper shorthand so far)<br> <ydaniv> ... a computed value of currentColor that is the initial value <missed><br> <fantasai> PROPOSED: If multiple values are omittable in serialization, but at least one is required, choose the first one in grammar order unless constrained by compat.<br> <ydaniv> Rossen2: any objections?<br> <ydaniv> ... hearing non<br> <ydaniv> s/non/none/<br> <fantasai> PROPOSED: If a <color> value is omittable when computed to currentColor, then it is omittable even though the resolved value is not the 'currentColor' keyword (because colors are absolutized), unless constrained by compat.<br> <fantasai> RESOLVED: If multiple values are omittable in serialization, but at least one is required, choose the first one in grammar order unless constrained by compat.<br> <florian> +1<br> <ydaniv> Rossen2: anything else on this one?<br> <ydaniv> ... moving on<br> <fantasai> RESOLVED: If a <color> value is omittable when computed to currentColor, then it is omittable even though the resolved value is not the 'currentColor' keyword (because colors are absolutized), unless constrained by compat.<br> </details> -- GitHub Notification of comment by css-meeting-bot Please view or discuss this issue at https://github.com/w3c/csswg-drafts/issues/12486#issuecomment-3137057339 using your GitHub account -- Sent via github-notify-ml as configured in https://github.com/w3c/github-notify-ml-config
Received on Wednesday, 30 July 2025 16:32:12 UTC