diff options
Diffstat (limited to 'testing/web-platform/tests/css/css-scroll-snap/scroll-target-snap-003.html')
-rw-r--r-- | testing/web-platform/tests/css/css-scroll-snap/scroll-target-snap-003.html | 69 |
1 files changed, 69 insertions, 0 deletions
diff --git a/testing/web-platform/tests/css/css-scroll-snap/scroll-target-snap-003.html b/testing/web-platform/tests/css/css-scroll-snap/scroll-target-snap-003.html new file mode 100644 index 0000000000..6fe3901e51 --- /dev/null +++ b/testing/web-platform/tests/css/css-scroll-snap/scroll-target-snap-003.html @@ -0,0 +1,69 @@ +<!DOCTYPE html> +<html> +<title>focus() and snap position with snapping on (y-axis)</title> +<link rel='author' title='Elika J. Etemad' href='http://fantasai.inkedblade.net/contact'> +<link rel='help' href='https://www.w3.org/TR/css-scroll-snap-1/#choosing'> +<link rel='match' href='scroll-target-001-ref.html'> +<meta name='assert' + content="Test passes if scroll snapping is honored + when scrolling an element into view + even if that operation is implied (in this case, by .focus())."> + +<style type='text/css'> + .container { + border: solid blue 4px; + height: 4em; + overflow: auto; + scroll-snap-type: block; + + /* to make failing more obvious */ + background: 0 1em / 100% 1em linear-gradient(red, red) repeat-x; + /* avoid anti-aliasing issues */ + font: 20px/1 sans-serif; + scrollbar-width: none; + } + .container > div, a { + height: 1em; + display: block; + outline: none; + } + #target { scroll-margin: 1em 0 0; + scroll-snap-align: center; } /* set up a snap position */ + #stripe { background: green; } /* color part of the snap area */ + .fail { color: red; } /* make failing more obvious */ + + /* Try to foil the UA */ + .foilup { margin-bottom: -1em; scroll-snap-align: start; } + .foildn { margin-top: -1em; scroll-snap-align: end; } + + /* emulate `scrollbar-width: none` for browsers that don't support it yet */ + ::-webkit-scrollbar { display: none; } +</style> + +<div id='instructions'>Test passes if there is a green stripe across the second quarter of the box below and no red.</div> + +<div class="container"> + <div></div> + <div></div> + <div></div> + <div></div> + <div class="foilup"></div> + <div class="fail">FAIL</div> + <div></div> + <div id="stripe"></div> + <div class="foilup"></div> + <a href="" id="target"></a> + <div class="foildn"></div> + <div></div> + <div class="fail">FAIL</div> + <div class="foildn"></div> + <div></div> + <div class="foildn"></div> + <div></div> + <div></div> + <div></div> +</div> + +<script> + document.getElementById('target').focus(); +</script> |