WPT
wpt / selection / deleteFromDocument.html
Spec: Selection API ↗
Runs: Chrome 155.0.8038.0 (wpt@b1a7025f8, 2026-09-02) | Firefox 157.0a1 (wpt@b1a7025f8, 2026-09-02) | Safari 251 preview (wpt@5ce815a83, 2026-08-27) | Ladybird 1.0-a7884 (wpt@b1a7025f8, 2026-09-02) | Servo Servo 0.5 (wpt@2ccd2cbf8, 2026-09-01) | Blitz 7727414ca (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 | 60/60 | 60/60 | 60/60 | 60/60 | 60/60 | NOT RUN |
| Subtest | Chrome | Firefox | Safari | Ladybird | Servo | Blitz |
|---|---|---|---|---|---|---|
| Selection.prototype.deleteFromDocument.length must equal 0 | PASS | PASS | PASS | PASS | PASS | — |
| Range 0: empty | PASS | PASS | PASS | PASS | PASS | — |
| Range 1: [paras[0].firstChild, 0, paras[0].firstChild, 0] | PASS | PASS | PASS | PASS | PASS | — |
| Range 2: [paras[0].firstChild, 0, paras[0].firstChild, 1] | PASS | PASS | PASS | PASS | PASS | — |
| Range 3: [paras[0].firstChild, 2, paras[0].firstChild, 8] | PASS | PASS | PASS | PASS | PASS | — |
| Range 4: [paras[0].firstChild, 2, paras[0].firstChild, 9] | PASS | PASS | PASS | PASS | PASS | — |
| Range 5: [paras[1].firstChild, 0, paras[1].firstChild, 0] | PASS | PASS | PASS | PASS | PASS | — |
| Range 6: [paras[1].firstChild, 0, paras[1].firstChild, 1] | PASS | PASS | PASS | PASS | PASS | — |
| Range 7: [paras[1].firstChild, 2, paras[1].firstChild, 8] | PASS | PASS | PASS | PASS | PASS | — |
| Range 8: [paras[1].firstChild, 2, paras[1].firstChild, 9] | PASS | PASS | PASS | PASS | PASS | — |
| Range 9: [detachedPara1.firstChild, 0, detachedPara1.firstChild, 0] | PASS | PASS | PASS | PASS | PASS | — |
| Range 10: [detachedPara1.firstChild, 0, detachedPara1.firstChild, 1] | PASS | PASS | PASS | PASS | PASS | — |
| Range 11: [detachedPara1.firstChild, 2, detachedPara1.firstChild, 8] | PASS | PASS | PASS | PASS | PASS | — |
| Range 12: [foreignPara1.firstChild, 0, foreignPara1.firstChild, 0] | PASS | PASS | PASS | PASS | PASS | — |
| Range 13: [foreignPara1.firstChild, 0, foreignPara1.firstChild, 1] | PASS | PASS | PASS | PASS | PASS | — |
| Range 14: [foreignPara1.firstChild, 2, foreignPara1.firstChild, 8] | PASS | PASS | PASS | PASS | PASS | — |
| Range 15: [document.documentElement, 0, document.documentElement, 1] | PASS | PASS | PASS | PASS | PASS | — |
| Range 16: [document.documentElement, 0, document.documentElement, 2] | PASS | PASS | PASS | PASS | PASS | — |
| Range 17: [document.documentElement, 1, document.documentElement, 2] | PASS | PASS | PASS | PASS | PASS | — |
| Range 18: [document.head, 1, document.head, 1] | PASS | PASS | PASS | PASS | PASS | — |
| Range 19: [document.body, 0, document.body, 1] | PASS | PASS | PASS | PASS | PASS | — |
| Range 20: [foreignDoc.documentElement, 0, foreignDoc.documentElement, 1] | PASS | PASS | PASS | PASS | PASS | — |
| Range 21: [foreignDoc.head, 1, foreignDoc.head, 1] | PASS | PASS | PASS | PASS | PASS | — |
| Range 22: [foreignDoc.body, 0, foreignDoc.body, 0] | PASS | PASS | PASS | PASS | PASS | — |
| Range 23: [paras[0], 0, paras[0], 0] | PASS | PASS | PASS | PASS | PASS | — |
| Range 24: [paras[0], 0, paras[0], 1] | PASS | PASS | PASS | PASS | PASS | — |
| Range 25: [detachedPara1, 0, detachedPara1, 0] | PASS | PASS | PASS | PASS | PASS | — |
| Range 26: [detachedPara1, 0, detachedPara1, 1] | PASS | PASS | PASS | PASS | PASS | — |
| Range 27: [paras[0].firstChild, 0, paras[1].firstChild, 0] | PASS | PASS | PASS | PASS | PASS | — |
| Range 28: [paras[0].firstChild, 0, paras[1].firstChild, 8] | PASS | PASS | PASS | PASS | PASS | — |
| Range 29: [paras[0].firstChild, 3, paras[3], 1] | PASS | PASS | PASS | PASS | PASS | — |
| Range 30: [paras[0], 0, paras[0].firstChild, 7] | PASS | PASS | PASS | PASS | PASS | — |
| Range 31: [testDiv, 2, paras[4], 1] | PASS | PASS | PASS | PASS | PASS | — |
| Range 32: [testDiv, 1, paras[2].firstChild, 5] | PASS | PASS | PASS | PASS | PASS | — |
| Range 33: [document.documentElement, 1, document.body, 0] | PASS | PASS | PASS | PASS | PASS | — |
| Range 34: [foreignDoc.documentElement, 1, foreignDoc.body, 0] | PASS | PASS | PASS | PASS | PASS | — |
| Range 35: [document, 0, document, 1] | PASS | PASS | PASS | PASS | PASS | — |
| Range 36: [document, 0, document, 2] | PASS | PASS | PASS | PASS | PASS | — |
| Range 37: [document, 1, document, 2] | PASS | PASS | PASS | PASS | PASS | — |
| Range 38: [testDiv, 0, comment, 5] | PASS | PASS | PASS | PASS | PASS | — |
| Range 39: [paras[2].firstChild, 4, comment, 2] | PASS | PASS | PASS | PASS | PASS | — |
| Range 40: [paras[3], 1, comment, 8] | PASS | PASS | PASS | PASS | PASS | — |
| Range 41: [foreignDoc, 0, foreignDoc, 0] | PASS | PASS | PASS | PASS | PASS | — |
| Range 42: [foreignDoc, 1, foreignComment, 2] | PASS | PASS | PASS | PASS | PASS | — |
| Range 43: [foreignDoc.body, 0, foreignTextNode, 36] | PASS | PASS | PASS | PASS | PASS | — |
| Range 44: [xmlDoc, 0, xmlDoc, 0] | PASS | PASS | PASS | PASS | PASS | — |
| Range 45: [xmlDoc, 1, xmlComment, 0] | PASS | PASS | PASS | PASS | PASS | — |
| Range 46: [detachedTextNode, 0, detachedTextNode, 8] | PASS | PASS | PASS | PASS | PASS | — |
| Range 47: [detachedForeignTextNode, 7, detachedForeignTextNode, 7] | PASS | PASS | PASS | PASS | PASS | — |
| Range 48: [detachedForeignTextNode, 0, detachedForeignTextNode, 8] | PASS | PASS | PASS | PASS | PASS | — |
| Range 49: [detachedXmlTextNode, 7, detachedXmlTextNode, 7] | PASS | PASS | PASS | PASS | PASS | — |
| Range 50: [detachedXmlTextNode, 0, detachedXmlTextNode, 8] | PASS | PASS | PASS | PASS | PASS | — |
| Range 51: [detachedComment, 3, detachedComment, 4] | PASS | PASS | PASS | PASS | PASS | — |
| Range 52: [detachedComment, 5, detachedComment, 5] | PASS | PASS | PASS | PASS | PASS | — |
| Range 53: [detachedForeignComment, 0, detachedForeignComment, 1] | PASS | PASS | PASS | PASS | PASS | — |
| Range 54: [detachedForeignComment, 4, detachedForeignComment, 4] | PASS | PASS | PASS | PASS | PASS | — |
| Range 55: [detachedXmlComment, 2, detachedXmlComment, 6] | PASS | PASS | PASS | PASS | PASS | — |
| Range 56: [docfrag, 0, docfrag, 0] | PASS | PASS | PASS | PASS | PASS | — |
| Range 57: [foreignDocfrag, 0, foreignDocfrag, 0] | PASS | PASS | PASS | PASS | PASS | — |
| Range 58: [xmlDocfrag, 0, xmlDocfrag, 0] | PASS | PASS | PASS | PASS | PASS | — |