WPT
wpt / editing / other / delete-without-unwrapping-first-line-of-child-block.html?method=BackspaceKey&lineBreak=br
Spec: https://w3c.github.io/editing/execCommand.html ↗
Runs: Chrome 155.0.8039.0 (wpt@d0c38285b, 2026-09-03) | Firefox 157.0a1 (wpt@ed1909ed6, 2026-09-03) | Safari 251 preview (wpt@5ce815a83, 2026-08-27) | Ladybird 1.0-56c61 (wpt@cc4d45aa0, 2026-09-03) | Servo Servo 0.6 (wpt@09159dcb3, 2026-09-02) | Blitz 188486089 (wpt@a95401e4e, 2026-09-02)
View on the Blitz WPT dashboard | Open test on wpt.live | wpt.fyi
| Chrome | Firefox | Safari | Ladybird | Servo | Blitz | |
|---|---|---|---|---|---|---|
| Total | 35/50 | 50/50 | 13/50 | 2/50 | 0/50 | NOT RUN |
| Subtest | Chrome | Firefox | Safari | Ladybird | Servo | Blitz |
|---|---|---|---|---|---|---|
| Backspace at abc<br>{<br><div id="child">]def<br>ghi</div> | PASS | PASS | FAIL | FAIL | FAIL | — |
| Typing "X" at abc<br>{<br><div id="child">]def<br>ghi</div> | PASS | PASS | FAIL | FAIL | FAIL | — |
| Backspace at <br>[abc<br><div id="child">]def<br>ghi</div> | PASS | PASS | PASS | FAIL | FAIL | — |
| Typing "X" at <br>[abc<br><div id="child">]def<br>ghi</div> | PASS | PASS | PASS | FAIL | FAIL | — |
| Backspace at <br>{<br><div id="child">]def<br>ghi</div> | PASS | PASS | FAIL | FAIL | FAIL | — |
| Typing "X" at <br>{<br><div id="child">]def<br>ghi</div> | PASS | PASS | FAIL | FAIL | FAIL | — |
| Backspace at {<br><br><div id="child">]def<br>ghi</div> | PASS | PASS | FAIL | FAIL | FAIL | — |
| Typing "X" at {<br><br><div id="child">]def<br>ghi</div> | PASS | PASS | FAIL | FAIL | FAIL | — |
| Backspace at [abc<br><br><div id="child">]def<br>ghi</div> | PASS | PASS | PASS | FAIL | FAIL | — |
| Typing "X" at [abc<br><br><div id="child">]def<br>ghi</div> | PASS | PASS | PASS | FAIL | FAIL | — |
| Backspace at abc<br>{<br><div id="child">d]ef<br>ghi</div> | PASS | PASS | FAIL | FAIL | FAIL | — |
| Typing "X" at abc<br>{<br><div id="child">d]ef<br>ghi</div> | PASS | PASS | FAIL | FAIL | FAIL | — |
| Backspace at <br>[abc<br><div id="child">d]ef<br>ghi</div> | PASS | PASS | PASS | FAIL | FAIL | — |
| Typing "X" at <br>[abc<br><div id="child">d]ef<br>ghi</div> | PASS | PASS | PASS | FAIL | FAIL | — |
| Backspace at <br>{<br><div id="child">d]ef<br>ghi</div> | PASS | PASS | FAIL | FAIL | FAIL | — |
| Typing "X" at <br>{<br><div id="child">d]ef<br>ghi</div> | PASS | PASS | FAIL | FAIL | FAIL | — |
| Backspace at {<br><br><div id="child">d]ef<br>ghi</div> | PASS | PASS | FAIL | FAIL | FAIL | — |
| Typing "X" at {<br><br><div id="child">d]ef<br>ghi</div> | PASS | PASS | FAIL | FAIL | FAIL | — |
| Backspace at [abc<br><br><div id="child">d]ef<br>ghi</div> | PASS | PASS | PASS | FAIL | FAIL | — |
| Typing "X" at [abc<br><br><div id="child">d]ef<br>ghi</div> | PASS | PASS | PASS | FAIL | FAIL | — |
| Backspace at abc<br><br><div id="child">[]def<br>ghi</div> | PASS | PASS | FAIL | PASS | FAIL | — |
| Backspace at <br><br><div id="child">[]def<br>ghi</div> | PASS | PASS | FAIL | PASS | FAIL | — |
| Backspace at <br><div id="child">[]def<br>ghi</div> | PASS | PASS | FAIL | FAIL | FAIL | — |
| Backspace at <b>abc<br><br></b></b><div id="child">[]def<br>ghi</div> | PASS | PASS | FAIL | FAIL | FAIL | — |
| Backspace at <b><br></b><div id="child">[]def<br>ghi</div> | PASS | PASS | PASS | FAIL | FAIL | — |
| getTargetRanges() for Backspace at abc<br>{<br><div id="child">]def<br>ghi</div> should return a range before the child <div> | FAIL | PASS | — | — | — | — |
| getTargetRanges() for Typing "X" at abc<br>{<br><div id="child">]def<br>ghi</div> should return a range ending in the child <div> | FAIL | PASS | — | — | — | — |
| getTargetRanges() for Backspace at <br>[abc<br><div id="child">]def<br>ghi</div> should return a range before the child <div> | FAIL | PASS | FAIL | — | — | — |
| getTargetRanges() for Typing "X" at <br>[abc<br><div id="child">]def<br>ghi</div> should return a range ending in the child <div> | FAIL | PASS | FAIL | — | — | — |
| getTargetRanges() for Backspace at <br>{<br><div id="child">]def<br>ghi</div> should return a range before the child <div> | FAIL | PASS | — | — | — | — |
| getTargetRanges() for Typing "X" at <br>{<br><div id="child">]def<br>ghi</div> should return a range ending in the child <div> | FAIL | PASS | — | — | — | — |
| getTargetRanges() for Backspace at {<br><br><div id="child">]def<br>ghi</div> should return a range before the child <div> | FAIL | PASS | — | — | — | — |
| getTargetRanges() for Typing "X" at {<br><br><div id="child">]def<br>ghi</div> should return a range ending in the child <div> | FAIL | PASS | — | — | — | — |
| getTargetRanges() for Backspace at [abc<br><br><div id="child">]def<br>ghi</div> should return a range before the child <div> | FAIL | PASS | FAIL | — | — | — |
| getTargetRanges() for Typing "X" at [abc<br><br><div id="child">]def<br>ghi</div> should return a range ending in the child <div> | FAIL | PASS | FAIL | — | — | — |
| getTargetRanges() for Backspace at abc<br>{<br><div id="child">d]ef<br>ghi</div> should return a range ends at start of the child <div> | PASS | PASS | — | — | — | — |
| getTargetRanges() for Typing "X" at abc<br>{<br><div id="child">d]ef<br>ghi</div> should return a range ends at start of the child <div> | PASS | PASS | — | — | — | — |
| getTargetRanges() for Backspace at <br>[abc<br><div id="child">d]ef<br>ghi</div> should return a range ends at start of the child <div> | PASS | PASS | PASS | — | — | — |
| getTargetRanges() for Typing "X" at <br>[abc<br><div id="child">d]ef<br>ghi</div> should return a range ends at start of the child <div> | PASS | PASS | PASS | — | — | — |
| getTargetRanges() for Backspace at <br>{<br><div id="child">d]ef<br>ghi</div> should return a range ends at start of the child <div> | PASS | PASS | — | — | — | — |
| getTargetRanges() for Typing "X" at <br>{<br><div id="child">d]ef<br>ghi</div> should return a range ends at start of the child <div> | PASS | PASS | — | — | — | — |
| getTargetRanges() for Backspace at {<br><br><div id="child">d]ef<br>ghi</div> should return a range ends at start of the child <div> | PASS | PASS | — | — | — | — |
| getTargetRanges() for Typing "X" at {<br><br><div id="child">d]ef<br>ghi</div> should return a range ends at start of the child <div> | PASS | PASS | — | — | — | — |
| getTargetRanges() for Backspace at [abc<br><br><div id="child">d]ef<br>ghi</div> should return a range ends at start of the child <div> | PASS | PASS | PASS | — | — | — |
| getTargetRanges() for Typing "X" at [abc<br><br><div id="child">d]ef<br>ghi</div> should return a range ends at start of the child <div> | PASS | PASS | PASS | — | — | — |
| getTargetRanges() for Backspace at abc<br><br><div id="child">[]def<br>ghi</div> should return a range before the child <div> | FAIL | PASS | — | FAIL | — | — |
| getTargetRanges() for Backspace at <br><br><div id="child">[]def<br>ghi</div> should return a range before the child <div> | FAIL | PASS | — | FAIL | — | — |
| getTargetRanges() for Backspace at <br><div id="child">[]def<br>ghi</div> should return a range before the child <div> | FAIL | PASS | — | — | — | — |
| getTargetRanges() for Backspace at <b>abc<br><br></b></b><div id="child">[]def<br>ghi</div> should return a range before the child <div> | FAIL | PASS | — | — | — | — |
| getTargetRanges() for Backspace at <b><br></b><div id="child">[]def<br>ghi</div> should return a range before the child <div> | FAIL | PASS | FAIL | — | — | — |