WPT
wpt / css / css-nesting / nested-declarations-matching.html
Spec: CSS Nesting ↗
Runs: Chrome 155.0.8041.0 (wpt@2c385f65e, 2026-09-04) | Firefox 157.0a1 (wpt@2c385f65e, 2026-09-04) | Safari 251 preview (wpt@a1e944e7a, 2026-09-04) | Ladybird 1.0-a7825 (wpt@2c385f65e, 2026-09-04) | Servo Servo 0.6 (wpt@7e3d005d7, 2026-09-03) | 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 | 11/11 | 11/11 | 11/11 | 11/11 | 10/11 | 9/11 |
| Subtest | Chrome | Firefox | Safari | Ladybird | Servo | Blitz |
|---|---|---|---|---|---|---|
| Trailing declarations apply after any preceding rules | PASS | PASS | PASS | PASS | PASS | PASS |
| Trailing declarations apply after any preceding rules (no leading) | PASS | PASS | PASS | PASS | PASS | PASS |
| Trailing declarations apply after any preceding rules (multiple) | PASS | PASS | PASS | PASS | PASS | PASS |
| Nested declarations rule has same specificity as outer selector | PASS | PASS | PASS | PASS | PASS | PASS |
| Nested declarations rule has top-level specificity behavior | PASS | PASS | PASS | PASS | PASS | PASS |
| Nested declarations rule has top-level specificity behavior (max matching) | PASS | PASS | PASS | PASS | PASS | PASS |
| Bare declartaion in nested grouping rule can match pseudo-element | PASS | PASS | PASS | PASS | FAIL | FAIL |
| Nested group rules have top-level specificity behavior | PASS | PASS | PASS | PASS | PASS | PASS |
| Nested @scope rules behave like :where(:scope) | PASS | PASS | PASS | PASS | PASS | PASS |
| Nested @scope rules behave like :where(:scope) (trailing) | PASS | PASS | PASS | PASS | PASS | PASS |
| Nested declarations rule responds to parent selector text change | PASS | PASS | PASS | PASS | PASS | FAIL |