WPT
wpt / css / selectors / invalidation / is-pseudo-containing-sibling-relationship-in-has.html
Spec: Selectors ↗
Runs: Chrome 155.0.8041.0 (wpt@2c385f65e, 2026-09-04) | Firefox 157.0a1 (wpt@2c385f65e, 2026-09-04) | Safari 251 preview (wpt@5ce815a83, 2026-08-27) | 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 | 21/21 | 21/21 | 12/21 | 21/21 | 20/21 | 20/21 |
| Subtest | Chrome | Firefox | Safari | Ladybird | Servo | Blitz |
|---|---|---|---|---|---|---|
| Initially red | PASS | PASS | PASS | PASS | FAIL | FAIL |
| sibling selector enclosed by :is() no longer matching after removal (1) | PASS | PASS | FAIL | PASS | PASS | PASS |
| sibling selector enclosed by :is() no longer matching after removal (2) | PASS | PASS | FAIL | PASS | PASS | PASS |
| sibling selector enclosed by :is() no longer matching after removal (3) | PASS | PASS | FAIL | PASS | PASS | PASS |
| sibling selector enclosed by :is() no longer matching after removal (4) | PASS | PASS | FAIL | PASS | PASS | PASS |
| sibling selector in non-subject enclosed by :is() no longer matching after removal (1) | PASS | PASS | FAIL | PASS | PASS | PASS |
| sibling selector in non-subject enclosed by :is() no longer matching after removal (2) | PASS | PASS | FAIL | PASS | PASS | PASS |
| sibling selector in non-subject enclosed by :is() no longer matching after removal (3) | PASS | PASS | PASS | PASS | PASS | PASS |
| sibling selector in non-subject enclosed by :is() no longer matching after removal (4) | PASS | PASS | PASS | PASS | PASS | PASS |
| sibling selector in non-subject enclosed by :is() no longer matching after removal (5) | PASS | PASS | PASS | PASS | PASS | PASS |
| :nth-child() enclosed by :is() no longer matching after removal (1) | PASS | PASS | FAIL | PASS | PASS | PASS |
| :nth-child() enclosed by :is() no longer matching after removal (2) | PASS | PASS | PASS | PASS | PASS | PASS |
| :nth-last-child() enclosed by :is() no longer matching after removal (1) | PASS | PASS | FAIL | PASS | PASS | PASS |
| :nth-last-child() enclosed by :is() no longer matching after removal (2) | PASS | PASS | PASS | PASS | PASS | PASS |
| :nth-child() in non-subject enclosed by :is() no longer matching after removal (1) | PASS | PASS | PASS | PASS | PASS | PASS |
| :nth-child() in non-subject enclosed by :is() no longer matching after removal (2) | PASS | PASS | PASS | PASS | PASS | PASS |
| :nth-last-child() in non-subject enclosed by :is() no longer matching after removal (1) | PASS | PASS | PASS | PASS | PASS | PASS |
| :nth-last-child() in non-subject enclosed by :is() no longer matching after removal (2) | PASS | PASS | PASS | PASS | PASS | PASS |
| sibling selector in parent selector enclosed by :is() no longer matching after removal | PASS | PASS | FAIL | PASS | PASS | PASS |
| sibling selector in parent selector non-subject position enclosed by :is() no longer matching after removal (1) | PASS | PASS | PASS | PASS | PASS | PASS |
| sibling selector in parent selector non-subject position enclosed by :is() no longer matching after removal (2) | PASS | PASS | PASS | PASS | PASS | PASS |