Intent to implement and ship: Support offset-path: shape()

203 views
Skip to first unread message

Noam Rosenthal

unread,
Apr 9, 2025, 4:17:32 AMApr 9
to blink-dev

Contact emails

nrose...@chromium.org

Explainer

None

Specification

https://drafts.csswg.org/css-shapes-2/#shape-function

Summary

The shape() function is already supported in clip-path, and allows responsive clipping. Enabling it also for offset-path will close a small gap where the same kind of shape can be used for that property as well.


* (already works in Safari and covered by WPTs)



Blink component

Blink>CSS

TAG review

None

TAG review status

Not applicable

Risks



Interoperability and Compatibility

None



Gecko: No signal

WebKit: Shipped/Shipping

Web developers: No signals

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



Debuggability

None



Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?

No

Is this feature fully tested by web-platform-tests?

No

Flag name on about://flags

None

Finch feature name

None

Non-finch justification

None

Rollout plan

Will ship enabled for all users

Requires code in //chrome?

False

Tracking bug

https://issues.chromium.org/issues/389713717

Estimated milestones

Shipping on desktop138
Shipping on Android138
Shipping on WebView138


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).

None

Link to entry on the Chrome Platform Status

https://chromestatus.com/feature/5165902775189504?gate=6308065911242752

This intent message was generated by Chrome Platform Status.

Noam Rosenthal

unread,
Apr 9, 2025, 8:39:11 AMApr 9
to blink-dev
I amended the title to include the path() function as well which is missing from offset-path, as it's the same code change.

Noam Rosenthal

unread,
Apr 9, 2025, 10:49:57 AMApr 9
to blink-dev
(please disregard this correction, offset-path: path() is already supported).

Domenic Denicola

unread,
Apr 11, 2025, 1:12:49 AMApr 11
to blink-dev, Noam Rosenthal


On Wednesday, April 9, 2025 at 5:17:32 PM UTC+9 Noam Rosenthal wrote:


Summary

The shape() function is already supported in clip-path, and allows responsive clipping. Enabling it also for offset-path will close a small gap where the same kind of shape can be used for that property as well.


* (already works in Safari and covered by WPTs)



Blink componentBlink>CSS

TAG reviewNone

TAG review statusNot applicable


Risks


Interoperability and Compatibility

None



Gecko: No signal

Can you file for one? Or maybe this is small enough not to require one, but is there a recorded CSSWG resolution with Gecko participation you could link to?
 

WebKit: Shipped/Shipping

Web developers: No signals

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



Debuggability

None



Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?No

Why not?
 


Is this feature fully tested by web-platform-tests?No

Why not?
 


Flag name on about://flagsNone

Finch feature nameNone

Non-finch justificationNone

Please provide one of these two, preferably the Finch feature name.
 


Rollout planWill ship enabled for all users


Requires code in //chrome?False

Tracking bughttps://issues.chromium.org/issues/389713717

Estimated milestonesShipping on desktop138Shipping on Android138Shipping on WebView138

138 has already branched, so just checking that you intend to backport? Or if not, it'd be good to update this to 139.
 

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).

None

Noam Rosenthal

unread,
Apr 11, 2025, 4:34:28 AMApr 11
to Domenic Denicola, blink-dev
Sorry, I realized I forgot to tick a few ChromeStatus boxes.

On Fri, Apr 11, 2025 at 6:12 AM Domenic Denicola <dom...@chromium.org> wrote:


On Wednesday, April 9, 2025 at 5:17:32 PM UTC+9 Noam Rosenthal wrote:
Contact emailsnrose...@chromium.org

ExplainerNone

Specificationhttps://drafts.csswg.org/css-shapes-2/#shape-function

Summary

The shape() function is already supported in clip-path, and allows responsive clipping. Enabling it also for offset-path will close a small gap where the same kind of shape can be used for that property as well.


* (already works in Safari and covered by WPTs)



Blink componentBlink>CSS

TAG reviewNone

TAG review statusNot applicable

Risks


Interoperability and Compatibility

None



Gecko: No signal

Can you file for one? Or maybe this is small enough not to require one, but is there a recorded CSSWG resolution with Gecko participation you could link to?
 

WebKit: Shipped/Shipping

Web developers: No signals

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



Debuggability

None



Will this feature be supported on all six Blink platforms (Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?No
Is this feature fully tested by web-platform-tests?No

Why not?
Sorry, I just missed a few boxes in ChromeStatus, this is supported on all platforms and fully tested by WPT. 
 
 


Flag name on about://flagsNone

Finch feature nameNone

Non-finch justificationNone

Please provide one of these two, preferably the Finch feature name.
It's there, updated ChromeStatus (it has a regular runtime flag which can be finched). 
 


Rollout planWill ship enabled for all users

Requires code in //chrome?False

Tracking bughttps://issues.chromium.org/issues/389713717

Estimated milestonesShipping on desktop138Shipping on Android138Shipping on WebView138

138 has already branched, so just checking that you intend to backport? Or if not, it'd be good to update this to 139.
According to https://chromiumdash.appspot.com/schedule 138 branches in May.

Domenic Denicola

unread,
Apr 14, 2025, 1:00:24 AMApr 14
to Noam Rosenthal, Domenic Denicola, blink-dev
Thanks, LGTM1. Sorry about the milestone confusion, I guess I was thinking of 136...

Daniel Clark

unread,
Apr 14, 2025, 2:17:32 PMApr 14
to Domenic Denicola, Noam Rosenthal, blink-dev

For the record, the TAG did review this (Resolution: satisfied): https://github.com/w3ctag/design-reviews/issues/1033. LGTM2.

 

-- Dan

--
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 blink-dev+...@chromium.org.
To view this discussion visit https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAM0wra8dU7_5rBnTSvdfN2Ku%3DtA4F%2BLwxVXWW%3Dkim1tcJRgXKA%40mail.gmail.com.

Alex Russell

unread,
Apr 14, 2025, 2:17:55 PMApr 14
to blink-dev, dan...@microsoft.com, blink-dev, Domenic Denicola, Noam Rosenthal
LGTM3

To unsubscribe from this group and stop receiving emails from it, send an email to blink-dev+unsubscribe@chromium.org.

Chris Harrelson

unread,
Apr 14, 2025, 2:18:12 PMApr 14
to Daniel Clark, Domenic Denicola, Noam Rosenthal, blink-dev

Noam Rosenthal

unread,
Apr 14, 2025, 3:22:18 PMApr 14
to Chris Harrelson, Daniel Clark, Domenic Denicola, blink-dev
Thanks!
FYI, I'm ready to ship this in M137, I thought it was going to take longer!
Please let me know if there are any issues with doing so.

Chris Harrelson

unread,
Apr 14, 2025, 3:54:47 PMApr 14
to Noam Rosenthal, Daniel Clark, Domenic Denicola, blink-dev
Go for it!

API owners approval is not tied to any particular milestone.

Reply all
Reply to author
Forward
0 new messages