Source code
Revision control
Copy as Markdown
Other Tools
Test Info:
- This WPT test may be referenced by the following Test IDs:
- /css/css-highlight-api/painting/custom-highlight-painting-invalidation-006.html - WPT Dashboard Interop Dashboard
<!DOCTYPE html>
<html class="reftest-wait">
<meta charset="UTF-8">
<title>CSS Highlight API Test: </title>
<link rel="match" href="custom-highlight-painting-001-ref.html">
<meta name="assert" value="::highlight overlay is correctly invalidated and repainted after inserting a new node inside one of its ranges">
<script src="resources/run-after-layout-and-paint.js"></script>
<style>
::highlight(example-highlight) {
background-color: yellow;
color: blue;
}
</style>
<body><span>two </span><span>three…</span>
<script>
let r = new Range();
r.setStart(document.body, 0);
r.setEnd(document.body, 1);
CSS.highlights.set("example-highlight", new Highlight(r));
let newNode = document.createElement("span");
newNode.innerText = "One ";
// Force frame paint before inserting a new node.
runAfterLayoutAndPaint(()=>{
document.body.insertBefore(newNode, document.body.firstChild);
document.documentElement.removeAttribute("class");
});
</script>
</html>