← back to v130 · allow-more-pseudo-elements-and-pseudo-classes-after-part

conformance · v130

v130 · allow-more-pseudo-elements-and-pseudo-classes-after-part — conformance probe

10 assertions drawn from the spec. Each is a single contract the spec text makes. Pass/fail reflects what this browser executed; blocked means the contract was not run because it needs user mediation, hardware, or another unavailable precondition. Open the page in Chrome stable / canary / Firefox / Safari to compare.

browser: spec: https://drafts.csswg.org/css-shadow-1/#selecting-a-shadow-element-the-part-pseudo-element chromestatus: #5195333643272192 generated 2026-06-05T19:29:31Z by manual-codex-devtools-mcp
0
pass
0
fail
0
blocked
10
total
id contract kind verdict detail
part-selector-supported The bare ::part(name) pseudo-element is recognised as a valid selector. spec ↗ css-supports
part-followed-by-hover A local state pseudo-class such as :hover is allowed after ::part(). spec ↗ css-supports
part-followed-by-focus-visible A local focus pseudo-class such as :focus-visible is allowed after ::part(). spec ↗ css-supports
part-followed-by-focus-within A local focus containment pseudo-class such as :focus-within is allowed after ::part(). spec ↗ css-supports
part-followed-by-before A tree-abiding pseudo-element such as ::before is allowed after ::part(). spec ↗ css-supports
part-followed-by-selection A tree-abiding pseudo-element such as ::selection is allowed after ::part(). spec ↗ css-supports
part-followed-by-part-rejected A second ::part() chained after ::part() is still rejected (combinators / re-targeting not allowed). spec ↗ script
part-combinator-rejected A combinator after ::part() is still rejected because it would expose deeper internal structure. spec ↗ script
part-has-rejected :has() after ::part() is still rejected because it depends on tree structure beyond the exposed part. spec ↗ script
part-tree-structural-pseudo-class-rejected A tree-structural pseudo-class such as :nth-child() is still rejected after ::part(). spec ↗ script