summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-overlapping-highlights-001.html
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-overlapping-highlights-001.html')
-rw-r--r--testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-overlapping-highlights-001.html43
1 files changed, 43 insertions, 0 deletions
diff --git a/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-overlapping-highlights-001.html b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-overlapping-highlights-001.html
new file mode 100644
index 0000000000..0b380574bc
--- /dev/null
+++ b/testing/web-platform/tests/css/css-highlight-api/painting/custom-highlight-painting-overlapping-highlights-001.html
@@ -0,0 +1,43 @@
+<!DOCTYPE html>
+<meta charset="UTF-8">
+<title>CSS Highlight API Test: Overlapping Highlights</title>
+<link rel="help" href="https://drafts.csswg.org/css-highlight-api-1/">
+<link rel="match" href="custom-highlight-painting-overlapping-highlights-001-ref.html">
+<meta name="assert" value="UAs must not define any styles for custom highlight pseudo-elements in the default UA stylesheet.">
+<style>
+ body {
+ font-size: 3em;
+ font-weight: bolder;
+ }
+ #affected1::highlight(highlight1) {
+ color: red;
+ }
+ #affected2::highlight(highlight2) {
+ color: green;
+ }
+</style>
+<body><span id="affected1">This should have 'highlight1' style (red).</span><span id="affected2">This should have 'highlight2' style (green).</span>
+<script>
+ /*
+ This test is meant to verify that:
+ - UAs must not define any styles for custom highlight pseudo-elements in
+ the default UA stylesheet.
+ - UAs do not paint unstyled custom highlights.
+
+ In this test, highlight2 has higher priority because it was registered
+ later, so it is painted over highlight1. This includes painting for
+ span#affected1, where there is no CSS rule for highlight2. But since unstyled
+ custom highlights are not painted, span#affected1 is still painted with the
+ styles for highlight1.
+
+ See https://drafts.csswg.org/css-highlight-api-1/#default-styles
+ */
+
+ const node = document.body;
+ let r = new Range();
+ r.setStart(node, 0);
+ r.setEnd(node, 2);
+
+ CSS.highlights.set("highlight1", new Highlight(r));
+ CSS.highlights.set("highlight2", new Highlight(r));
+</script> \ No newline at end of file