summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-scroll-snap/support/scroll-target-snap-001-iframe.html
blob: b67c3f8d3ec7cec22beea2a4031227c51d6ee13e (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
55
<!DOCTYPE html>
<title>iframe for #target and snap position with snapping on</title>
<style type='text/css'>
  html, body {
    margin: 0; padding: 0;
  }
  html {
    /* to make failing more obvious */
    background: 0 1em / 100% 1em linear-gradient(red, red) repeat-x fixed;
    /* avoid anti-aliasing issues */
    font: 20px/1 sans-serif;
    scrollbar-width: none;

    /* turn on snapping */
    scroll-snap-type: block;
  }
  div {
    height: 1em;
  }
  /* Note: we use "start" for #target to avoid spec ambiguity where
   * scroll-snap-align conflicts with default ScrollIntoViewOptions.
   * See https://github.com/w3c/csswg-drafts/issues/9576.
   */
  #target { scroll-margin:     2em 0 0;
            scroll-snap-align:  start;  } /* 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></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>
<div id="target"></div>
<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>