WPT
wpt / css / css-cascade / scope-nesting.html
Spec: CSS Cascading ↗
Runs: Chrome 155.0.8043.0 (wpt@b89af32bc, 2026-09-05) | Firefox 157.0a1 (wpt@b89af32bc, 2026-09-05) | Safari 251 preview (wpt@b89af32bc, 2026-09-05) | Ladybird 1.0-4611b (wpt@b89af32bc, 2026-09-05) | Servo Servo 0.6 (wpt@2c385f65e, 2026-09-04) | Blitz a50cb8971 (wpt@a95401e4e, 2026-09-03)
View on the Blitz WPT dashboard | Open test on wpt.live | wpt.fyi
| Chrome | Firefox | Safari | Ladybird | Servo | Blitz | |
|---|---|---|---|---|---|---|
| Total | 24/24 | 24/24 | 24/24 | 24/24 | 0/24 | 0/24 |
| Subtest | Chrome | Firefox | Safari | Ladybird | Servo | Blitz |
|---|---|---|---|---|---|---|
| Nesting-selector in <scope-end> | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Implicit :scope in <scope-end> | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Relative selectors in <scope-end> | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Nested nesting-selectors within scope's <stylesheet> select inclusive descendants of the scope root | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Nesting-selector within :scope rule | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Nesting-selector within :scope rule (double nested) | PASS | PASS | PASS | PASS | FAIL | FAIL |
| @scope nested within style rule | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Parent pseudo class within scope-start | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Parent pseudo class within body of nested @scope | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Implicit rule within nested @scope | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Implicit rule within nested @scope (proximity) | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Nested :scope inside an :is | PASS | PASS | PASS | PASS | FAIL | FAIL |
| :scope within nested and scoped rule | PASS | PASS | PASS | PASS | FAIL | FAIL |
| :scope within nested and scoped rule (implied &) | PASS | PASS | PASS | PASS | FAIL | FAIL |
| :scope within nested and scoped rule (relative) | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Scoped nested group rule | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Scoped nested within another scope | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Implicit (prelude-less) @scope as a nested group rule | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Insert a nested style rule within @scope, & | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Insert a nested style rule within @scope, :scope | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Insert a CSSNestedDeclarations rule directly in top-level @scope | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Mutating selectorText on outer style rule causes correct inner specificity | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Modifying selectorText invalidates inner scoped rules | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Modifying selectorText invalidates inner scoped rules (nested declarations) | PASS | PASS | PASS | PASS | FAIL | FAIL |