blob: cd2bb274f564171f7afa21b4a0a7e8d67ce4bd37 [file] [log] [blame]
<!DOCTYPE html>
<html>
<meta charset="UTF-8">
<title>CSS Pseudo-Elements Test: ::selection overlay drawn over the ::grammar-error overlay</title>
<link rel="author" title="Gérard Talbot" href="http://www.gtalbot.org/BrowserBugsSection/css21testsuite/">
<link rel="help" href="https://www.w3.org/TR/css-pseudo-4/#highlight-painting">
<link rel="match" href="reference/selection-overlay-and-grammar-001-ref.html">
<meta content="" name="flags">
<meta name="assert" content="In this test, the div::selection pseudo-element must be drawn over the div::grammar-error overlay.">
<!--
The initial version of this test was relying on color
composition and was predicting a lime-green-ish (#7FBF80:
slightly desaturated lime green) background color for "thing".
"#7fbf80 color description : Slightly desaturated lime green"
https://www.colorhexa.com/7fbf80
This test does not rely on color composition but the
test nevertheless verifies the ::selection overlay drawn
over the ::grammar-error overlay.
-->
<style>
div
{
font-size: 60px;
line-height: 90px;
}
div::selection
{
background-color: rgba(0%, 50%, 100%, 0.5);
/*
a very lite blue color
according to
https://www.colorhexa.com/7fbfff
*/
color: yellow;
}
div::grammar-error
{
background-color: yellow;
color: red;
}
</style>
<script src="support/selections.js"></script>
<p>PREREQUISITE: User agent needs to have an enabled and capable grammar error module. If it does not, then this test does not apply to such user agent.
<p>Test passes
<ul>
<li>if each glyph of the sentence is yellow
<li>if "thing" has a desaturated lime green background
<li>if the other words have a very lite blue background and
<li>if there is no red.
</ul>
<!--
The grammar mistakes in the text below are intentional and part of this test.
https://html.spec.whatwg.org/multipage/interaction.html#spelling-and-grammar-checking
• contenteditable makes the text “checkable for the purposes of [spelling and grammar checking]”
• spellcheck tries to enable spelling and grammar checking (subject to user preferences)
• lang tries to guide the UA towards checking the text in English (but the UA may ignore this)
-->
<div id="test" contenteditable="true" spellcheck="true" lang="en">The fox jumps over the dog.the fox jumps over the dog.</div>
<script>
const test = document.querySelector("#test");
selectNodeContents(test);
trySpellcheck(test);
</script>