Bug 179402

Summary: ::slotted() styles should be applied only after flattening
Product: WebKit Reporter: Keanu Lee <webkit>
Component: CSSAssignee: Nobody <webkit-unassigned>
Status: RESOLVED CONFIGURATION CHANGED    
Severity: Normal CC: koivisto, rniwa, simon.fraser
Priority: P2    
Version: Safari 11   
Hardware: Unspecified   
OS: Unspecified   
See Also: https://bugs.webkit.org/show_bug.cgi?id=178237
Bug Depends on:    
Bug Blocks: 148695    

Description Keanu Lee 2017-11-07 17:11:09 PST
Per the spec https://drafts.csswg.org/css-scoping/#slotted-pseudo, the ::slotted() selector should only be applied to elements after flattening.

Example: https://jsbin.com/ruwesaj/edit?html,output

The following style:

::slotted(.hide) {
  display: none;
}

should not apply to the intermediate:

<slot class="hide"></slot>
Comment 1 Simon Fraser (smfr) 2020-09-23 09:19:55 PDT
Is this related to bug 169948?
Comment 2 Ryosuke Niwa 2020-09-24 23:15:43 PDT
(In reply to Simon Fraser (smfr) from comment #1)
> Is this related to bug 169948?

Yup. That bug is now not to be fixed given the latest discussion at CSS WG: https://github.com/w3c/csswg-drafts/issues/5482
Comment 3 Ryosuke Niwa 2022-07-02 22:55:37 PDT
This is working now.