Could you clarify if this I2S: 1. just adds the 'preserve-parent-color' value to forced-color-adjust and doesn't apply it anywhere by default. 2. adds it and changes the default value of forced-color-adjust to be "preserve-parent-color" on all SVG elements 3. adds it and changes the default value of forced-color-adjust to be " preserve-parent-color" only on the SVG root element (that then gets propagated down)
it seems that #3 was decided <https://github.com/w3c/csswg-drafts/issues/6310#issuecomment-862517612> on the CSSWG <https://github.com/w3c/csswg-drafts/issues/6310#issuecomment-862517612>, but your summary and crbug's CL looks more like #1, while your motivation seems like #2. On Thu, Oct 28, 2021 at 5:45 PM 'Sara Tang' via blink-dev < [email protected]> wrote: > Contact emails [email protected], [email protected] > > Explainer > https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/Accessibility/PreserveParentColor/explainer.md > > Specification > https://www.w3.org/TR/css-color-adjust-1/#forced-color-adjust-prop > > Summary > > Adds the ‘preserve-parent-color' value to the ‘forced-color-adjust' CSS > property. When Forced Colors Mode is enabled, the ‘color’ property is > inherited, and we’ve set ‘forced-color-adjust: preserve-parent-color', the > ‘color’ property will compute to the used value of its parent. Otherwise, > ‘forced-color-adjust: preserve-parent-color' value behaves the same as > ‘forced-color-adjust: none’. > > Contact emails [email protected], [email protected] > > Explainer > https://github.com/MicrosoftEdge/MSEdgeExplainers/blob/main/Accessibility/PreserveParentColor/explainer.md > > Specification > https://www.w3.org/TR/css-color-adjust-1/#forced-color-adjust-prop > > Summary > > Adds the ‘preserve-parent-color' value to the ‘forced-color-adjust' CSS > property. When Forced Colors Mode is enabled, the ‘color’ property is > inherited, and we’ve set ‘forced-color-adjust: preserve-parent-color', the > ‘color’ property will compute to the used value of its parent. Otherwise, > ‘forced-color-adjust: preserve-parent-color' value behaves the same as > ‘forced-color-adjust: none’. > > *Motivation* > > * ‘forced-color-adjust' is a CSS property that allows developers to opt > out of Forced Colors Mode. Previously, there were > two supported values: ‘auto’ and ‘none’, which can be used to > control whether or not an element’s styles are adjusted by the UA in Forced > Colors Mode. A third value, ‘preserve-parent-color', has recently been > introduced in the spec, which provides similar behavior to ‘none’, > except that it also allows an element to inherit its parent's > used ‘color’ value. In other words, ‘preserve-parent-color' provides the > ability for an element to inherit its parent’s Forced Colors Mode > adjusted ‘color’ value. The intention of ‘preserve-parent-color’ is to get > a reasonable behavior for SVG icons that utilize ‘currentColor’ when > styling ‘fill’ and ‘stroke’ in Forced Colors Mode, > as described in [css-color-adjust-1] Spec currently breaks use of > currentColor for SVG icons in WHCM · Issue #6310 · w3c/csswg-drafts · > GitHub <https://github.com/w3c/csswg-drafts/issues/6310>. The use of > ‘currentColor’ when styling an SVG icon is a common pattern used by authors > to ensure an accessible experience in Forced Colors Mode. For example, in > this sample logo, <https://codepen.io/somelaniesaid/pen/Yzqxogg> an author > would expect the logo to automatically adjust to use the ‘CanvasText’ > system color for ‘fill’ and ‘stroke’ in Forced Colors Mode, as a result of > setting each to ‘currentColor’. This behavior, > however, became broken when we moved from forcing colors at computed value > time to used value time: [css-color-adjust-1] Is forced color computed or > used value? · Issue #4915 · w3c/csswg-drafts · GitHub > <https://github.com/w3c/csswg-drafts/issues/4915>. Instead of inheriting > ‘CanvasText’, as before, the above sample logo > <https://codepen.io/somelaniesaid/pen/Yzqxogg> would inherit the computed > ‘color’ value of its parent, resulting in a logo that is no longer readable > in Forced Colors Mode. The new ‘preserve-parent-color' value was added to > address this common SVG use case. By changing the default value of > ‘forced-color-adjust’ for SVGs from ‘none’ to ‘preserve-parent-color', SVG > icons that make use of ‘currentColor’ will now inherit the used ‘color’ > value of its parent, as expected. It is important to note that this may > break SVGs that expect the opposite inheritance behavior for the ‘color’ > property. However, the behavior of `preserve-parent-color` handles the most > common SVG use cases, and the behavior better matches legacy > implementations of High Contrast Mode. * > > Blink component Blink>CSS > <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ECSS> > > Search tags css <https://www.chromestatus.com/features#tags:css>, forced > <https://www.chromestatus.com/features#tags:forced>, colors > <https://www.chromestatus.com/features#tags:colors>, forced-colors > <https://www.chromestatus.com/features#tags:forced-colors>, > forced-color-adjust > <https://www.chromestatus.com/features#tags:forced-color-adjust>, > preserve-parent-color > <https://www.chromestatus.com/features#tags:preserve-parent-color> > > TAG review https://github.com/w3ctag/design-reviews/issues/681 > > TAG review status Issues open > > Risks > > > Interoperability and Compatibility > > Interoperability Risks Gecko has shipped a version of Forced Colors Mode > without support for ‘forced-color-adjust’. Although there is an open bug > for adding support (https://bugzilla.mozilla.org/show_bug.cgi?id=1591210), > development has not been started yet. Compatibility Risks We are updating > the default value of ‘forced-color-adjust’ for SVGs in Forced Colors Mode > from ‘none’ to ‘preserve-parent-color'. This means that SVGs will now > inherit the used ‘color’ of their parent at computed value time. The new > behavior will better match author expectation and historical SVG behavior > in IE and legacy Edge. > > > *Gecko*: In development ( > https://bugzilla.mozilla.org/show_bug.cgi?id=1591210) > > *WebKit*: No signal ( > https://lists.webkit.org/pipermail/webkit-dev/2020-December/031642.html) > > *Web developers*: Positive ( > https://github.com/w3c/csswg-drafts/issues/6310) > > > Debuggability > > This will be included in the larger effort to emulate Forced Colors Mode: > https://bugs.chromium.org/p/chromium/issues/detail?id=1130859&q=owner:kahinds%40microsoft.com&can=2 > <https://bugs.chromium.org/p/chromium/issues/detail?id=1130859&q=owner%3Akahinds%40microsoft.com&can=2> > > > Is this feature fully tested by web-platform-tests > <https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md> > ? Yes > > Flag name --enable-blink-features=ForcedColorsPreserveParentColor > > Requires code in //chrome? False > > Tracking bug https://bugs.chromium.org/p/chromium/issues/detail?id=1242706 > > Estimated milestones > > No milestones specified > > > Link to entry on the Chrome Platform Status > https://www.chromestatus.com/feature/4887620095049728 > > This intent message was generated by Chrome Platform Status > <https://www.chromestatus.com/>. > > Blink component Blink>CSS > <https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ECSS> > > Search tags css <https://www.chromestatus.com/features#tags:css>, forced > <https://www.chromestatus.com/features#tags:forced>, colors > <https://www.chromestatus.com/features#tags:colors>, forced-colors > <https://www.chromestatus.com/features#tags:forced-colors>, > forced-color-adjust > <https://www.chromestatus.com/features#tags:forced-color-adjust>, > preserve-parent-color > <https://www.chromestatus.com/features#tags:preserve-parent-color> > > TAG review https://github.com/w3ctag/design-reviews/issues/681 > > TAG review status Issues open > > Risks > > > Interoperability and Compatibility > > Interoperability Risks Gecko has shipped a version of Forced Colors Mode > without support for ‘forced-color-adjust’. Although there is an open bug > for adding support (https://bugzilla.mozilla.org/show_bug.cgi?id=1591210), > development has not been started yet. Compatibility Risks We are updating > the default value of ‘forced-color-adjust’ for SVGs in Forced Colors Mode > from ‘none’ to ‘preserve-parent-color'. This means that SVGs will now > inherit the used ‘color’ of their parent at computed value time. The new > behavior will better match author expectation and historical SVG behavior > in IE and legacy Edge. > > > *Gecko*: In development ( > https://bugzilla.mozilla.org/show_bug.cgi?id=1591210) > > *WebKit*: No signal ( > https://lists.webkit.org/pipermail/webkit-dev/2020-December/031642.html) > > *Web developers*: Positive ( > https://github.com/w3c/csswg-drafts/issues/6310) > > > Debuggability > > This will be included in the larger effort to emulate Forced Colors Mode: > https://bugs.chromium.org/p/chromium/issues/detail?id=1130859&q=owner:kahinds%40microsoft.com&can=2 > <https://bugs.chromium.org/p/chromium/issues/detail?id=1130859&q=owner%3Akahinds%40microsoft.com&can=2> > > > Is this feature fully tested by web-platform-tests > <https://chromium.googlesource.com/chromium/src/+/master/docs/testing/web_platform_tests.md> > ? Yes > > Flag name --enable-blink-features=ForcedColorsPreserveParentColor > > Requires code in //chrome? False > > Tracking bug https://bugs.chromium.org/p/chromium/issues/detail?id=1242706 > > Estimated milestones > > No milestones specified > > > Link to entry on the Chrome Platform Status > https://www.chromestatus.com/feature/4887620095049728 > > This intent message was generated by Chrome Platform Status > <https://www.chromestatus.com/>. > > -- > You received this message because you are subscribed to the Google Groups > "blink-dev" group. > To unsubscribe from this group and stop receiving emails from it, send an > email to [email protected]. > To view this discussion on the web visit > https://groups.google.com/a/chromium.org/d/msgid/blink-dev/MN2PR00MB068749AC3484CA42C4FE32F0F2869%40MN2PR00MB0687.namprd00.prod.outlook.com > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/MN2PR00MB068749AC3484CA42C4FE32F0F2869%40MN2PR00MB0687.namprd00.prod.outlook.com?utm_medium=email&utm_source=footer> > . > -- You received this message because you are subscribed to the Google Groups "blink-dev" group. To unsubscribe from this group and stop receiving emails from it, send an email to [email protected]. To view this discussion on the web visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CADp2-T_yJN7i-HREmzZuZxP4i9WoDDZQot997WTPKq0LMx5CMw%40mail.gmail.com.
