| <!DOCTYPE html> |
| <html> |
| <head> |
| <meta charset="utf-8"> |
| <title>Custom highlight pseudo elements across elements.</title> |
| <link rel="help" href="https://drafts.csswg.org/css-highlight-api-1/#painting"> |
| <link rel="match" href="highlight-text-expected.html"> |
| <meta name="assert" content="Highlights should be able to be specified across elements."> |
| <style> |
| ::highlight(example-highlight1) { |
| background-color: yellow; |
| color:green; |
| } |
| ::highlight(example-highlight2) { |
| background-color: blue; |
| color:red; |
| } |
| ::highlight(example-highlight3) { |
| background-color: purple; |
| color:pink; |
| } |
| </style> |
| </head> |
| <body> |
| <span id="text1">One two three</span> |
| <span id="text2">four five six</span> |
| <span id="text3">seven eight nine</span> |
| <span id="text4">ten eleven twelve</span> |
| <span id="text5">thirteen fourteen fifteen</span> |
| |
| <script> |
| let textElement1 = document.getElementById('text1'); |
| let textElement2 = document.getElementById('text2'); |
| let textElement3 = document.getElementById('text3'); |
| let textElement4 = document.getElementById('text4'); |
| let textElement5 = document.getElementById('text5'); |
| let highlightRangeGroup1 = new HighlightRangeGroup(new StaticRange({startContainer: textElement1, startOffset: 4, endContainer: textElement1, endOffset: 7})); |
| |
| let highlightRangeGroup2 = new HighlightRangeGroup(new StaticRange({startContainer: textElement1, startOffset: 10, endContainer: textElement2, endOffset: 4})); |
| highlightRangeGroup2.add(new StaticRange({startContainer: textElement2, startOffset: 10, endContainer: textElement3, endOffset: 5})); |
| |
| let highlightRangeGroup3 = new HighlightRangeGroup(new StaticRange({startContainer: textElement3, startOffset: 10, endContainer: textElement5, endOffset: 12})); |
| |
| CSS.highlights.set("example-highlight1", highlightRangeGroup1); |
| CSS.highlights.set("example-highlight2", highlightRangeGroup2); |
| CSS.highlights.set("example-highlight3", highlightRangeGroup3); |
| </script> |
| </body> |
| </html> |