On Thursday, August 29, 2024 at 12:48:36 AM UTC+9 David Baron wrote:

Contact emailsdba...@chromium.org

ExplainerNone

Specificationhttps://drafts.csswg.org/css-shadow-parts-1/#part

Summary

CSS selectors that use the ::part() pseudo-element are allowed to have 
other CSS pseudo-elements (except ::part()) and many types of other CSS 
pseudo-classes after them. (Combinators are still not allowed after 
:part(), and pseudo-classes that depend on tree structure are not allowed.) 
Previously Chrome only allowed a limited set of pseudo-classes and 
pseudo-elements after ::part(). This changes to allowing all of the 
pseudo-classes and pseudo-elements that should be allowed. It means 
selectors such as ::part(part-name):enabled and ::part(part-name)::marker 
are now allowed.


Blink componentBlink>CSS 
<https://bugs.chromium.org/p/chromium/issues/list?q=component:Blink%3ECSS>

Motivation
This allows CSS selector features to be combined in ways that were intended 
during the design of the ::part() feature. It allows more styling of things 
that web components expose as parts. This change also provides a more solid 
foundation for building future CSS pseudo-elements (currently known as 
"part-like pseudo-elements") on top of the ::part() feature. This includes 
new pseudo-elements such as ::details-content and new pseudo-elements for 
styling customizable <select>.

TAG reviewOriginal TAG review for the feature was https://github.com/w3ctag/
design-reviews/issues/230

TAG review statusNot applicable

Risks


Interoperability and Compatibility

Low risk.


*Gecko*: Shipped/Shipping

*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)?Yes

Is this feature fully tested by web-platform-tests 
<https://chromium.googlesource.com/chromium/src/+/main/docs/testing/web_platform_tests.md>
?Yes

https://wpt.fyi/results/css/css-shadow-parts/pseudo-classes-after-part.html 
https://wpt.fyi/results/css/css-shadow-parts/pseudo-elements-after-part.html


Flag name on chrome://flagsNone

Finch feature nameCSSPartAllowsMoreSelectorsAfter

Requires code in //chrome?False

Tracking bughttps://issues.chromium.org/40623497 and 
https://issues.chromium.org/40825557

Estimated milestonesShipping on desktop130Shipping on Android130Shipping on 
WebView130

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).
There are related open discussions in:
https://github.com/w3c/csswg-drafts/issues/10083
https://github.com/w3c/csswg-drafts/issues/10786
https://github.com/w3c/csswg-drafts/issues/10787
https://github.com/w3c/csswg-drafts/issues/10788
https://github.com/w3c/csswg-drafts/issues/10794
but I don't think any of these discussions justify delaying shipping these 
changes. We can follow up with future changes to reflect future spec 
resolutions.


I really appreciate the transparency in you finding and listing all of 
these issues.

I tried to read through several of them but they're relatively long, and in 
some cases, progress has been made but not enough to fully close the issue.

Would you be able to give us a one- or two-sentence summary for each of 
them, indicating what potential breaking changes might come out of such 
discussions, and why you think it'll be easy to fast-follow with such 
future changes?
 



Link to entry on the Chrome Platform Statushttps://chromestatus.com/
feature/5195333643272192?gate=5140576434126848

Links to previous Intent discussionsIntent to Prototype (for a larger 
feature that this is a part of): https://groups.google.
com/a/chromium.org/g/blink-dev/c/Q1OX6ZA_aaE/m/ALwkAOfHAwAJ


This intent message was generated by Chrome Platform Status 
<https://chromestatus.com/> and edited by hand.

-- 
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+unsubscr...@chromium.org.
To view this discussion on the web visit 
https://groups.google.com/a/chromium.org/d/msgid/blink-dev/6f5f0b77-1272-4e75-a039-87e416b4e3b7n%40chromium.org.

Reply via email to