Chromestatus
unread,8:34 AM (10 hours ago) 8:34 AMSign in to reply to author
Sign in to forward
You do not have permission to delete messages in this group
Either email addresses are anonymous for this group or you need the view member email addresses permission to view the original message
to blin...@chromium.org, dba...@chromium.org, mas...@chromium.org, felip...@igalia.com
Contact emails
felip...@igalia.com
Specification
https://html.spec.whatwg.org/#attr-template-shadowrootslotassignment
Summary
Adds the shadowrootslotassignment attribute to the <template> element, allowing declarative shadow roots to use manual slot assignment. Until now this option was only available imperatively, via attachShadow({slotAssignment: "manual"}), so components that rely on manual assignment could not create their shadow roots declaratively. The attribute accepts "named" (the default, preserving current behavior) and "manual", and is reflected by the shadowRootSlotAssignment property on HTMLTemplateElement.
Blink component
Blink>DOM>ShadowDOM
Web Feature ID
declarative-shadow-dom
Motivation
slotAssignment is fixed at shadow root creation, so components using manual slot assignment could not adopt declarative shadow DOM.
The gap was raised in
https://github.com/WICG/webcomponents/issues/967 and specified in the HTML Standard via
https://github.com/whatwg/html/pull/12267 .
Both Gecko and WebKit have implemented the attribute, so shipping in Chromium completes cross-engine support.
This feature is opt-in and the default ("named") is unchanged.
Initial public proposal
No information provided
Search tags
shadow,
DOM,
slot
TAG review
No information provided
TAG review status
Not applicable
Goals for experimentation
None
Risks
Debuggability
No new DevTools work required. The attribute is visible in the Elements panel like the other shadowroot* attributes, and the resulting shadow root's mode is already exposed via ShadowRoot.slotAssignment.
Will this feature be supported on all six Blink platforms
(Windows, Mac, Linux, ChromeOS, Android, and Android WebView)?
Yes
Yes
https://wpt.fyi/results/shadow-dom/declarative/declarative-shadow-dom-repeats-slot-assignment.html
https://wpt.fyi/results/shadow-dom/declarative/declarative-shadow-dom-slot-assignment.html
https://wpt.fyi/results/shadow-dom/declarative/declarative-shadow-dom-slot-assignment-serialization.html
Flag name on about://flags
No information provided
Finch feature name
ShadowRootSlotAssignment
Rollout plan
Will ship enabled for all users
Requires code in //chrome?
False
Tracking bug
https://issues.chromium.org/issues/493315747
Estimated milestones
| Shipping on desktop | 151 |
| Shipping on Android | 151 |
| Shipping on WebView | 151 |
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/5178682139344896?gate=6073478714359808