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 milestones Shipping on desktop 130 Shipping on Android 130 Shipping on WebView 130 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. Link to entry on the Chrome Platform Status https://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/CAG0MU3hbvwQ_kjtcwgkL%2B32fDD5nkejNb9dYcp5RgjYDEw0GSw%40mail.gmail.com.