WPT
wpt / selection / contenteditable / modify-around-non-editable-span.html
Spec: Selection API ↗
Runs: Chrome 155.0.8039.0 (wpt@a4fcd77aa, 2026-09-03) | Firefox 157.0a1 (wpt@cc4d45aa0, 2026-09-03) | Safari 251 preview (wpt@5ce815a83, 2026-08-27) | Ladybird 1.0-a9df8 (wpt@9b4cabf6d, 2026-09-03) | Servo Servo 0.6 (wpt@7e3d005d7, 2026-09-03) | 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 | 16/16 | 8/16 | 16/16 | 8/16 | 0/16 | NOT RUN |
| Subtest | Chrome | Firefox | Safari | Ladybird | Servo | Blitz |
|---|---|---|---|---|---|---|
| getSelection().modify("move", "forward", "character") when " []<span contenteditable=false>" | PASS | PASS | PASS | PASS | FAIL | — |
| getSelection().modify("move", "forward", "character") when "editable[]<span contenteditable=false>" | PASS | FAIL | PASS | FAIL | FAIL | — |
| getSelection().modify("move", "right", "character") when " []<span contenteditable=false>" | PASS | PASS | PASS | PASS | FAIL | — |
| getSelection().modify("move", "right", "character") when "editable[]<span contenteditable=false>" | PASS | FAIL | PASS | FAIL | FAIL | — |
| getSelection().modify("move", "backward", "character") when " <span contenteditable=false>...</span>[]editable" | PASS | FAIL | PASS | FAIL | FAIL | — |
| getSelection().modify("move", "backward", "character") when "editable<span contenteditable=false>...</span>[] " | PASS | PASS | PASS | PASS | FAIL | — |
| getSelection().modify("move", "left", "character") when " <span contenteditable=false>...</span>[]editable" | PASS | FAIL | PASS | FAIL | FAIL | — |
| getSelection().modify("move", "left", "character") when "editable<span contenteditable=false>...</span>[] " | PASS | PASS | PASS | PASS | FAIL | — |
| getSelection().modify("move", "forward", "character") after getSelection().selectAllChildren(editingHost) when " []<span contenteditable=false>" | PASS | PASS | PASS | PASS | FAIL | — |
| getSelection().modify("move", "forward", "character") after getSelection().selectAllChildren(editingHost) when "editable[]<span contenteditable=false>" | PASS | FAIL | PASS | FAIL | FAIL | — |
| getSelection().modify("move", "right", "character") after getSelection().selectAllChildren(editingHost) when " []<span contenteditable=false>" | PASS | PASS | PASS | PASS | FAIL | — |
| getSelection().modify("move", "right", "character") after getSelection().selectAllChildren(editingHost) when "editable[]<span contenteditable=false>" | PASS | FAIL | PASS | FAIL | FAIL | — |
| getSelection().modify("move", "backward", "character") after getSelection().selectAllChildren(editingHost) when " <span contenteditable=false>...</span>[]editable" | PASS | FAIL | PASS | FAIL | FAIL | — |
| getSelection().modify("move", "backward", "character") after getSelection().selectAllChildren(editingHost) when "editable<span contenteditable=false>...</span>[] " | PASS | PASS | PASS | PASS | FAIL | — |
| getSelection().modify("move", "left", "character") after getSelection().selectAllChildren(editingHost) when " <span contenteditable=false>...</span>[]editable" | PASS | FAIL | PASS | FAIL | FAIL | — |
| getSelection().modify("move", "left", "character") after getSelection().selectAllChildren(editingHost) when "editable<span contenteditable=false>...</span>[] " | PASS | PASS | PASS | PASS | FAIL | — |