I retracted my LGTM while the CSSWG discussion is pending. Thanks!

Vlad

On Friday, May 8, 2026 at 11:18:01 AM UTC-4 Chris Harrelson wrote:

> This intent will need a further review at the CSSWG for possible syntax 
> adjustments. See https://github.com/w3c/csswg-drafts/issues/13901.
>
> On Wed, May 6, 2026 at 8:36 AM 'Virali Purbey' via blink-dev <
> [email protected]> wrote:
>
>> Yes, the parsing wpt links were not right. Updated it now. Thanks for 
>> pointing it out.
>>
>>  
>>
>> *From:* Daniel Bratell <[email protected]> 
>> *Sent:* 06 May 2026 21:05
>> *To:* Rick Byers <[email protected]>; Vladimir Levin <
>> [email protected]>
>> *Cc:* blink-dev <[email protected]>; Virali Purbey <
>> [email protected]>
>> *Subject:* [EXTERNAL] Re: [blink-dev] Re: Intent to Ship: Support 
>> 'path-length' as a CSS property.
>>
>>  
>>
>> LGTM3
>>
>> (note Vlad's comment)
>>
>> /Daniel
>>
>> On 2026-05-06 17:30, Rick Byers wrote:
>>
>> LGTM2
>>
>>  
>>
>> On Wed, May 6, 2026 at 11:27 AM Vladimir Levin <[email protected]> 
>> wrote:
>>
>> LGTM1, modulo the parsing WPTs: the result seem to be missing. I assume 
>> they are there, but maybe the link is incorrect? Can you clarify? 
>>
>>  
>>
>> Thanks,
>>
>> Vlad
>>
>> On Wednesday, May 6, 2026 at 5:36:39 AM UTC-4 Virali Purbey wrote:
>>
>> *Contact emails*
>>
>> [email protected]
>>
>>  
>>
>> *Specification*
>>
>> https://github.com/w3c/svgwg/pull/1073
>>
>>  
>>
>> *Summary*
>>
>> This change introduces a new CSS property, 'path-length', which maps to 
>> the existing SVG 'pathLength' presentation attribute. It applies to SVG 
>> geometry elements that support 'pathLength' (including <path>, <circle>, 
>> <rect>, <line>, <polyline>, <polygon>, and <ellipse>).
>>
>> Exposing 'pathLength' as a CSS property allows authors to specify it via 
>> stylesheets, inline styles, and animations, enabling it to participate in 
>> normal CSS cascading, specificity, transitions, and animations. The 
>> property affects all computations that depend on the total path length, 
>> including stroke dash rendering and text positioning along a <textPath>.
>>
>> CSS declarations override the presentation attribute following standard 
>> CSS precedence rules. The initial value of 'path-length' is 'none', which 
>> represents the absence of an author-supplied path length and is distinct 
>> from an explicit numeric value such as '0'.
>>
>> Existing attribute-only behavior is preserved when the feature is 
>> disabled.
>>
>>  
>>
>> *Blink component*
>>
>> Blink>SVG 
>> <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3ESVG%22>
>>
>>  
>>
>> *Web Feature ID*
>>
>> svg-path-length-css <https://webstatus.dev/features/svg-path-length-css>
>>
>>  
>>
>> *Motivation*
>>
>> Today, 'pathLength' can only be specified as an SVG presentation 
>> attribute. As a result, it cannot participate in the CSS cascade, 
>> specificity, animations, or transitions, unlike other SVG geometry 
>> properties such as 'r', 'cx', 'cy', 'x', 'y', and 'd', which are already 
>> exposed as CSS properties.
>>
>> This limitation prevents authors from controlling total path length using 
>> stylesheets, overriding presentation attributes via CSS, or animating 
>> 'pathLength' using standard CSS animation and transition mechanisms. Common 
>> authoring patterns, such as CSS-driven stroke dash animations and 
>> text-on-path effects that rely on scalable path length, require workarounds 
>> or script today.
>>
>> Promoting 'pathLength' to a CSS property aligns it with existing SVG 
>> geometry properties, enables full participation in CSS cascading and 
>> animation, and closes a long-standing authoring gap identified by the SVG 
>> Working Group ( https://github.com/w3c/svgwg/issues/773). Existing 
>> attribute behavior is preserved, with CSS declarations taking precedence 
>> according to standard cascade rules.
>>
>>  
>>
>> *Initial public proposal*
>>
>> *No information provided*
>>
>>  
>>
>> *TAG review*
>>
>> Not requested. This property exposes existing SVG `pathLength` attribute 
>> behavior through CSS with no new capabilities, no new security surface, and 
>> no change to default rendering. It follows the same pattern as other SVG 
>> presentation attributes already shipped as CSS properties (`cx`, `cy`, `r`, 
>> `d`, etc.)
>>
>>  
>>
>> *TAG review status*
>>
>> Not applicable
>>
>>  
>>
>> *Goals for experimentation*
>>
>> None
>>
>>  
>>
>> *Risks*
>>
>>  
>>
>>
>> *Interoperability and Compatibility * 
>>
>> Behavior change risk:
>> Previously, pathLength was only accessible as an SVG presentation 
>> attribute. This change introduces a new path-length CSS property that maps 
>> to the existing SVG behavior. Because this is a new CSS property and does 
>> not alter default rendering when unused, the risk to existing content is 
>> minimal. The presentation attribute mapping follows standard SVG/CSS 
>> cascade rules, meaning CSS declarations take precedence over the pathLength 
>> attribute, consistent with how other SVG presentation attributes behave.
>>
>> Mitigation:
>> The feature is guarded by a Finch flag (SvgPathLengthCssProperty), which 
>> can be used as a kill switch if unexpected compatibility issues arise.
>>
>> Edge cases:
>> Blink treats `path-length: 0` as an infinite scaling factor: any non-zero 
>> dash value in `stroke-dasharray` extends to infinity, rendering the stroke 
>> as solid. This matches the SVG 2 spec text ("a value of zero is valid and 
>> must be treated as a scaling factor of infinity"). Earlier WG discussions 
>> on zero-value semantics ( https://github.com/w3c/svgwg/issues/81,  
>> https://github.com/w3c/svgwg/issues/383) have been resolved and closed. 
>> The spec PR ( https://github.com/w3c/svgwg/pull/1073) has WG consensus 
>> and codifies this behavior. This change preserves Blink's existing 
>> attribute semantics for `pathLength = 0` while exposing the same behavior 
>> through CSS, verified by `path-length-css-zero.tentative.svg`.
>>
>>  
>>
>> *Gecko*:
>> No signal
>> https://github.com/mozilla/standards-positions/issues/1363
>>
>>  
>>
>> *WebKit*:
>> No signal 
>> https://github.com/WebKit/standards-positions/issues/621
>>
>>  
>>
>> *Web developers*:
>> Positive 
>> 8 users have upvoted for this CrBug.
>>
>>  
>>
>> *Other signals*:
>>
>>  
>>
>> *Security*
>>
>> This feature introduces a new CSS property for an existing SVG concept 
>> (`pathLength`). It does not add new capabilities beyond what authors can 
>> already express via the `pathLength` attribute, and it reuses existing 
>> `parsing/rendering` logic. No new cross-origin access, network access, or 
>> privilege changes are introduced.
>>
>>  
>>
>> *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?*
>>
>> No. This change does not deprecate or modify existing APIs. It introduces 
>> a new CSS property that maps to an existing SVG presentation attribute and 
>> preserves existing attribute-only behavior when the feature flag is 
>> disabled.
>>
>>  
>>
>> *Debuggability*
>>
>> Issues related to this feature are debuggable using existing CSS and SVG 
>> inspection tools. The computed value of `path-length` is visible in 
>> DevTools’ Computed Style panel. Invalid values are rejected at parse time, 
>> and the "none" initial value is represented distinctly from authored 
>> numeric values (including 0). No new debugging tooling is required.
>>
>>  
>>
>> *Will this feature be supported on all six Blink platforms (Windows, Mac, 
>> Linux, ChromeOS, Android, and Android WebView)?*
>>
>> Yes
>>
>>  
>>
>> *Is this feature fully tested by **web-platform-tests* 
>> <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
>> *?*
>>
>> Yes
>>  
>>
>> Parsing:
>> - Valid values:  
>> https://wpt.fyi/results/svg/geometry/parsing/path-length-valid.tentative.svg
>>  
>> - Invalid values:  
>> https://wpt.fyi/results/svg/geometry/parsing/path-length-invalid.tentative.svg
>>  
>> - Computed values:  
>> https://wpt.fyi/results/svg/geometry/parsing/path-length-computed.tentative.svg
>>  
>>
>> Property behavior:
>> - Inheritance:  
>> https://wpt.fyi/results/svg/path/property/inheritance.tentative.svg 
>>
>> Animations:
>> - SVG animate element:  
>> https://wpt.fyi/results/svg/animations/animate-pathLength.tentative.html 
>>
>> - CSS interpolation:  
>> https://wpt.fyi/results/svg/path/animations/path-length-interpolation.tentative.html
>>  
>>
>> Rendering / distance:
>> - CSS path-length rendering:  
>> https://wpt.fyi/results/svg/path/distance/path-length-css-property.tentative.svg
>>  
>> - CSS overrides presentation attribute:  
>> https://wpt.fyi/results/svg/path/distance/path-length-css-overrides-presentation-attribute.tentative.svg
>>  
>> - Zero value handling (path-length: 0):  
>> https://wpt.fyi/results/svg/path/distance/path-length-css-zero.tentative.svg
>>  
>>
>> Text on path:
>> - textPath with display:none:  
>> https://wpt.fyi/results/svg/text/reftests/textpath-pathlength-css-display-none.tentative.svg
>>
>>  
>>
>> *Flag name on about://flags*
>>
>> *No information provided*
>>
>>  
>>
>> *Finch feature name*
>>
>> SvgPathLengthCssProperty
>>
>>  
>>
>> *Rollout plan*
>>
>> Will ship enabled for all users
>>
>>  
>>
>> *Requires code in //chrome?*
>>
>> False
>>
>>  
>>
>> *Tracking bug*
>>
>> https://issues.chromium.org/issues/40670251
>>
>>  
>>
>> *Estimated milestones*
>>
>> Shipping on desktop
>>
>> 149
>>
>> Shipping on Android
>>
>> 149
>>
>> Shipping on WebView
>>
>> 149
>>
>>  
>>
>> *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).*
>>
>> The spec PR ( https://github.com/w3c/svgwg/pull/1073) has WG consensus 
>> and is about to be merged. No anticipated spec changes that would introduce 
>> web compat or interop risk.
>>
>>  
>>
>> *Link to entry on the Chrome Platform Status*
>>
>> https://chromestatus.com/feature/4861677550043136?gate=5806183338344448
>>
>>  
>>
>> This intent message was generated by Chrome Platform Status 
>> <https://chromestatus.com/>.
>>
>>  
>>
>> *From <*
>> *https://chromestatus.com/feature/4861677550043136/gate/5806183338344448/intent*
>>  
>> <https://chromestatus.com/feature/4861677550043136/gate/5806183338344448/intent>
>> *>*
>>
>>  
>>
>> -- 
>> 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/43c88a25-5bcb-437f-bba8-15b7a5828ffcn%40chromium.org
>>  
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/43c88a25-5bcb-437f-bba8-15b7a5828ffcn%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/CAFUtAY_dbxDO9_ET_WxgmGYMtzK2pGhb7ykOkXZ05SsgJZaq7g%40mail.gmail.com
>>  
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFUtAY_dbxDO9_ET_WxgmGYMtzK2pGhb7ykOkXZ05SsgJZaq7g%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/SIAP153MB12130B78F142B0EFAB4BCBB7C13F2%40SIAP153MB1213.APCP153.PROD.OUTLOOK.COM
>>  
>> <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/SIAP153MB12130B78F142B0EFAB4BCBB7C13F2%40SIAP153MB1213.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/b2686cd6-8c6f-4663-bb4b-4cab7e263c52n%40chromium.org.

Reply via email to