On 8/23/26 10:06 a.m., Helmut Januschka wrote:

*Contact emails*
[email protected]

*Specification*
https://drafts.csswg.org/css-shapes-1/#basic-shape-functions

*Summary*
The circle() and ellipse() CSS basic-shape functions accept the closest-corner and farthest-corner radius keywords, in addition to the existing closest-side and farthest-side. These keywords resolve to the Euclidean distance from the shape center to the nearest or farthest corner of the reference box, matching the long-standing behavior of radial-gradient(). They work in clip-path, shape-outside, and offset-path, so the same shape syntax accepted by gradients now works for shapes. CL: https://chromium-review.googlesource.com/c/chromium/src/+/7767079

*Blink component*
Blink>CSS <https://issues.chromium.org/issues?q=customfield1222907:%22Blink%3ECSS%22>

*Web Feature ID*
shapes <https://webstatus.dev/features/shapes>

*Motivation*
The <radial-extent> keywords closest-corner and farthest-corner are defined for radial gradients and have been interoperably supported there for years. The circle() and ellipse() basic-shape syntax in CSS Shapes Module Level 1 shares the <shape-radius> production with gradients, but Blink (and Gecko) only accepted closest-side / farthest-side for the basic shapes. That means authors who want a circle that exactly inscribes the reference box's farthest corner have to hand-compute sqrt(w*w + h*h)/2 or fall back to a radial-gradient() mask, even though the keyword exists in the same value space. This change fills in the missing keywords so basic shapes have the full <radial-extent> set: closest-corner: the distance from the center to the closest corner of the reference box. farthest-corner: the distance from the center to the farthest corner of the reference box. For ellipse(), which accepts two independent <shape-radius> values in current implementations, each axis resolves independently to the corner Euclidean distance. A spec ambiguity exists about whether ellipse() should accept one <radial-extent> covering both axes (per the spec text) or two independent ones (current implementation reality). This was discussed in https://github.com/w3c/csswg-drafts/issues/13814 and the conclusion from the thread was that the existing two-value interpretation is fine to keep.

*Initial public proposal*
/No information provided/

*TAG review*
/No information provided/

*TAG review status*
Not applicable

*Goals for experimentation*
None

*Risks*


*Interoperability and Compatibility*
/No information provided/

/Gecko/: No signal

/WebKit/: No signal
Can we request signals?

/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?

/No information provided/


*Debuggability*
/No information provided/

*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 <https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>?*
Yes


*Flag name on about://flags*
/No information provided/

*Finch feature name*
BasicShapeCornerRadius

*Rollout plan*
Will ship enabled for all users

*Requires code in //chrome?*
False

*Tracking bug*
https://crbug.com/361617757

*Estimated milestones*
Shipping on desktop     155
Shipping on Android     155
Shipping on WebView     155
Shipping on iOS         155



*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/5100672946143232?gate=5910108950364160

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/CAFmjHKSp4M_xW9Y4_1x56p_kLHBsY8_NdBUgYAqLjcKTUUsS2w%40mail.gmail.com <https://groups.google.com/a/chromium.org/d/msgid/blink-dev/CAFmjHKSp4M_xW9Y4_1x56p_kLHBsY8_NdBUgYAqLjcKTUUsS2w%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/c529dcd4-94b8-40bb-b7b5-28bb319d43dd%40chromium.org.

Reply via email to