LGTM3 On Tue, Mar 3, 2026, 6:42 AM Mike Taylor <[email protected]> wrote:
> LGTM2 > On 3/3/26 4:09 a.m., Philip Jägenstedt wrote: > > LGTM1, looks like a useful addition already supported by other browsers. > > On Mon, Mar 2, 2026 at 3:06 PM 'Ragvesh Sharma' via blink-dev < > [email protected]> wrote: > >> *Contact emails* >> *[email protected] <[email protected]>* >> >> *Specification* >> *https://drafts.csswg.org/css-text-decor-4/#text-decoration-skip-ink-property >> <https://drafts.csswg.org/css-text-decor-4/#text-decoration-skip-ink-property>* >> >> *Summary* >> Add support for the `all` value for the CSS text-decoration-skip-ink >> property, as specified in >> *https://drafts.csswg.org/css-text-decor-4/#text-decoration-skip-ink-property >> <https://drafts.csswg.org/css-text-decor-4/#text-decoration-skip-ink-property>*. >> The `text-decoration-skip-ink` property already supports `auto` and `none`. >> The `all` value extends this by unconditionally applying ink-skipping to >> all glyphs - including CJK characters - whereas `auto` leaves CJK >> characters un-skipped because ink-skipping tends to produce undesirable >> visual results for ideographic scripts at typical underline positions. With >> `text-decoration-skip-ink: all`, authors who have adjusted >> `text-underline-position` or `text-underline-offset` to avoid clashing with >> CJK glyphs can explicitly opt in to ink-skipping for those characters as >> well. >> >> *Blink component* >> *Blink>Fonts >> <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3EFonts%22>* >> >> *Web Feature ID* >> *text-decoration-skip-ink >> <https://webstatus.dev/features/text-decoration-skip-ink>* >> >> *Motivation* >> The `text-decoration-skip-ink` property controls whether underlines and >> other text decorations skip over glyph ascenders and descenders to improve >> readability. The current `auto` value intentionally does not apply >> ink-skipping to CJK (Chinese, Japanese, Korean) scripts, as these >> characters typically sit above the baseline and rarely intersect with >> underlines. However, web developers working with mixed-script content or >> specific CJK layouts sometimes need underlines to skip around all glyphs >> uniformly, including CJK characters. Without the all value, developers have >> no way to request this behavior - they must either accept inconsistent >> decoration rendering across scripts or avoid using >> `text-decoration-skip-ink` entirely. The `all` value gives authors explicit >> control to request ink-skipping for all scripts, enabling consistent visual >> treatment of underlined text regardless of language. This is particularly >> useful for design systems that require uniform text decoration behavior >> across multilingual content. Firefox and Safari already support this value, >> making it an interoperability gap for Chrome. >> >> *Initial public proposal* >> *No information provided* >> >> *TAG review* >> *No information provided* >> >> *TAG review status* >> Not applicable >> >> *Risks* >> >> >> *Interoperability and Compatibility* >> Very Low Risk. This feature adds a new keyword value (`all`) and does not >> change the behavior of existing values (`auto`, `none`). Pages that do not >> use `text-decoration-skip-ink: all` are completely unaffected. This feature >> is already shipping in Firefox and Safari. Chrome is the last major browser >> to implement this value. Shipping this feature improves interoperability >> and closes a compatibility gap. The >> *https://drafts.csswg.org/css-text-decor-4/#text-decoration-skip-ink-property >> <https://drafts.csswg.org/css-text-decor-4/#text-decoration-skip-ink-property>* >> defines >> the `all` value, and there is consensus among browser vendors on its >> behavior. >> >> *Gecko*: Shipped/Shipping >> (*https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/text-decoration-skip-ink#browser_compatibility >> <https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/text-decoration-skip-ink#browser_compatibility>*) >> Fully >> Supported since v75. Link: >> *https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/text-decoration-skip-ink#browser_compatibility >> <https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/text-decoration-skip-ink#browser_compatibility>* >> >> *WebKit*: Shipped/Shipping >> (*https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/text-decoration-skip-ink#browser_compatibility >> <https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/text-decoration-skip-ink#browser_compatibility>*) >> Fully >> Supported since v15.4. Link: >> *https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/text-decoration-skip-ink#browser_compatibility >> <https://developer.mozilla.org/en-US/docs/Web/CSS/Reference/Properties/text-decoration-skip-ink#browser_compatibility>* >> >> *Web developers*: In the Chromium bug 9 people have upvoted for this >> feature. >> >> *Other signals*: >> >> *WebView application risks* >> *Does this intent deprecate or change behavior of existing APIs, such >> that it has potentially high risk for Android WebView-based applications?* >> None. This is a new CSS property value (all) that existing content does >> not use. The behavior of existing values (auto and none) is unchanged. >> Sites must explicitly opt-in to the new behavior by specifying >> text-decoration-skip-ink: all. There are no backwards compatibility >> concerns. >> >> >> *Debuggability* >> Standard CSS DevTools support. The all value is already parseable behind >> the experimental flag and visible in the Styles pane. No additional >> DevTools work is needed. >> >> *Will this feature be supported on all six Blink platforms (Windows, Mac, >> Linux, ChromeOS, Android, and Android WebView)?* >> Yes >> This feature is supported on all platforms where Chromium runs (Windows, >> macOS, Linux, ChromeOS, Android). The implementation uses platform-agnostic >> font APIs (GetTextIntercepts) to compute glyph outlines for ink-skipping, >> which are already used for the existing auto value. No platform-specific >> code paths are required. >> >> *Is this feature fully tested by **web-platform-tests >> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>* >> *?* >> Yes >> >> Existing WPT tests already cover parsing of all: >> - >> external/wpt/css/css-text-decor/parsing/text-decoration-skip-ink-valid.html >> — validates all as a valid value >> - >> external/wpt/css/css-text-decor/parsing/text-decoration-skip-ink-computed.html >> — validates computed value >> - >> external/wpt/css/css-text-decor/parsing/text-decoration-skip-ink-invalid.html >> — validates rejection of invalid values >> >> Visual rendering is covered by: >> - fast/css3-text/css3-text-decoration/text-decoration-skip-ink-all.html >> (Blink pixel test) >> >> *Flag name on about://flags* >> *No information provided* >> >> *Finch feature name* >> CSSTextDecorationSkipInkAll >> >> *Rollout plan* >> Will ship enabled for all users >> >> *Requires code in //chrome?* >> False >> >> *Tracking bug* >> *https://issues.chromium.org/issues/40675832 >> <https://issues.chromium.org/issues/40675832>* >> >> *Estimated milestones* >> Shipping on desktop >> 148 >> Shipping on Android >> 148 >> Shipping on WebView >> 148 >> Shipping on iOS >> 148 >> >> >> *Anticipated spec changes* >> *Open questions about a feature may be a source of future web compat or >> interop issues. Please list open issues (e.g. links to known github issues >> in the project for the feature specification) whose resolution may >> introduce web compat/interop risk (e.g., changing to naming or structure of >> the API in a non-backward-compatible way).* >> *No information provided* >> >> *Link to entry on the Chrome Platform Status* >> *https://chromestatus.com/feature/5077600085082112?gate=6690394362478592 >> <https://chromestatus.com/feature/5077600085082112?gate=6690394362478592>* >> >> This intent message was generated by *Chrome Platform Status >> <https://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 visit >> https://groups.google.com/a/chromium.org/d/msgid/blink-dev/SEYP153MB116960579D53783B0BBC8C83B173A%40SEYP153MB1169.APCP153.PROD.OUTLOOK.COM >> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/SEYP153MB116960579D53783B0BBC8C83B173A%40SEYP153MB1169.APCP153.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 visit > https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAARdPYfufADdHZFs1HfXP-D4nndXDbZ4Cn-%3DVd%3Dk0C1XZgnGGQ%40mail.gmail.com > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAARdPYfufADdHZFs1HfXP-D4nndXDbZ4Cn-%3DVd%3Dk0C1XZgnGGQ%40mail.gmail.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 visit > https://groups.google.com/a/chromium.org/d/msgid/blink-dev/adc6618f-e52a-4d32-82d4-7739a46b41a0%40chromium.org > <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/adc6618f-e52a-4d32-82d4-7739a46b41a0%40chromium.org?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 visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAOMQ%2Bw_z0_tnMntp1s8F%3DJ3p46TvW2BR7EXfteJJRNCcgf9bjg%40mail.gmail.com.
