| <!DOCTYPE html> |
| <meta charset="UTF-8"> |
| <title>CSS Highlight API Test: </title> |
| <link rel="help" href="https://drafts.csswg.org/css-highlight-api-1/"> |
| <link rel="match" href="custom-highlight-painting-iframe-005-ref.html"> |
| <meta name="assert" value="Creating a Highlight in the root Document with a Range in the root document and another one in an iframe is correctly painted when added to the iframe's CSS.highlights (only the iframe's range is painted)."> |
| <style> |
| ::highlight(foo) { |
| color: green; |
| background-color: greenyellow; |
| } |
| </style> |
| <body> |
| <iframe |
| id="iframe" |
| srcdoc=" |
| <style> |
| ::highlight(foo) { |
| color: blue; |
| background-color: cyan; |
| } |
| </style> |
| <span id='span-iframe'>abc</span> |
| " |
| > |
| </iframe> |
| <br> |
| <span id="span-doc">abc</span> |
| <script> |
| let spanDoc = document.querySelector("#span-doc"); |
| let rangeDoc = new Range(); |
| rangeDoc.setStart(spanDoc, 0); |
| rangeDoc.setEnd(spanDoc, 1); |
| |
| let iframe = document.querySelector("#iframe"); |
| iframe.onload = () => { |
| let spanIframe = iframe.contentDocument.querySelector("#span-iframe"); |
| let rangeIframe = new Range(); |
| rangeIframe.setStart(spanIframe, 0); |
| rangeIframe.setEnd(spanIframe, 1); |
| |
| let h = new Highlight(rangeDoc, rangeIframe); |
| iframe.contentWindow.CSS.highlights.set("foo", h); |
| } |
| </script> |