summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-scroll-snap/scroll-target-margin-004.html
blob: ac87c8684d6a13cf400baea0fb918e4c59db368e (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
<!DOCTYPE html>
<html>
<title>scroll-margin on elements with 'display: table;'</title>
<link rel='author' title='Jan Grosser' href='mailto:jan_firefoxdev@t-online.de'>
<link rel='help' href='https://bugzilla.mozilla.org/show_bug.cgi?id=1633192'>
<link rel='help' href='https://www.w3.org/TR/css-scroll-snap-1/#scroll-margin'>
<link rel='match' href='scroll-target-001-ref.html'>
<meta name="flags" content="should">
<meta name='assert' content="Test passes if scroll-margin is honored on elements with 'display: table'.">
<style type='text/css'>
  .container {
    border: solid blue 4px;
    height: 4em;
    overflow: auto;

    /* 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 {
    height: 1em;
  }
  #target    { scroll-margin: 2em 0 1em; display: table; } /* snap area is exact fit for snapport */
  #stripe    { background: green;        } /* color part of the snap area         */
  .fail      { color: red;               } /* make failing more obvious           */

  /* 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="fail">FAIL</div>
  <div></div>
  <div id="stripe"></div>
  <div id="target"></div>
  <div></div>
  <div class="fail">FAIL</div>
  <div></div>
  <div></div>
  <div></div>
  <div></div>
</div>

<script>
  document.getElementById('target').scrollIntoView();
</script>