diff options
Diffstat (limited to 'testing/web-platform/tests/css/selectors/focus-within-006.html')
-rw-r--r-- | testing/web-platform/tests/css/selectors/focus-within-006.html | 49 |
1 files changed, 49 insertions, 0 deletions
diff --git a/testing/web-platform/tests/css/selectors/focus-within-006.html b/testing/web-platform/tests/css/selectors/focus-within-006.html new file mode 100644 index 0000000000..ff63cceb6e --- /dev/null +++ b/testing/web-platform/tests/css/selectors/focus-within-006.html @@ -0,0 +1,49 @@ +<!DOCTYPE html> +<html lang=en class="reftest-wait"> +<meta charset="utf-8"> +<title>Selectors Level 4: focus-within</title> +<link rel="author" title="Keyong Li" href="mailto:kli79@bloomberg.net"> +<link rel="author" title="Florian Rivoal" href="mailto:florian@rivoal.net"> +<link rel="help" href="https://drafts.csswg.org/selectors-4/#focus-within-pseudo"> +<link rel="match" href="focus-within-006-ref.html"> +<meta name="assert" content="Test that :focus-within works on form controls, using an input element."> +<style> +:focus { + outline: none; + + /* Make the caret invisible + since it matches the color of the text, which is transparent, + while keeping the text readable thanks to its shadow. + Not using the caret-color property as it is too new to be relied on. */ + color: transparent; text-shadow: black 0px 0px 0px; +} + +/* Use blue to indicate that the user needs to pay attention. + This element needs to be focused for the test to make sense. */ +#focusme:not(:focus) { + border: solid 15px blue; +} + +#focusme:focus:not(:focus-within) { + background: red; +} +div:focus-within { + border: solid 5px green; +} +</style> +<p>Test passes if, when the element below is focused, +it is surrounded by a thick green border. +There must be no red or blue once it is focused.</p> +<div> + <div> + <div> + <input id="focusme" value="Focus this element"> + </div> + </div> +</div> +<script> +var focusme = document.getElementById('focusme'); +focusme.focus(); +document.documentElement.classList.remove('reftest-wait'); +</script> +</html> |