summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-overflow/scrollbar-gutter-dynamic-002.html
blob: a830e6b680b82984cfb1e95831288c5b804e9aaa (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
56
57
58
59
60
61
62
63
64
65
66
67
68
69
70
71
72
73
74
75
76
77
78
79
80
81
82
83
84
85
86
87
<!DOCTYPE html>
<html class="reftest-wait">
  <meta charset="utf-8">
  <title>CSS Overflow: test scrollbar-gutter dynamic update</title>
  <link rel="author" title="Luke Warlow" href="mailto:luke@warlow.dev">
  <link rel="help" href="https://drafts.csswg.org/css-overflow-4/#scrollbar-gutter-property">
  <link rel="match" href="scrollbar-gutter-dynamic-002-ref.html">
  <script src="/common/reftest-wait.js"></script>

  <style>
  .line {
    display: flex;
  }

  .container {
    writing-mode: horizontal-tb;
    direction: ltr;

    block-size: 200px;
    inline-size: 200px;
    margin: 10px;
    background: deepskyblue;
  }

  .content {
    inline-size: 100%;
    block-size: 200%;
    background: lightsalmon;
  }
  </style>

  <div class="line">
    <div id="auto-auto" class="container" style="overflow-y: auto; scrollbar-gutter: auto">
      <div class="content"></div>
    </div>

    <div id="scroll-auto" class="container" style="overflow-y: scroll; scrollbar-gutter: auto">
      <div class="content"></div>
    </div>

    <div id="hidden-auto" class="container" style="overflow-y: hidden; scrollbar-gutter: auto">
      <div class="content"></div>
    </div>
  </div>

  <div class="line">
    <div id="auto-stable" class="container" style="overflow-y: auto; scrollbar-gutter: stable">
      <div class="content"></div>
    </div>

    <div id="scroll-stable" class="container" style="overflow-y: scroll; scrollbar-gutter: stable">
      <div class="content"></div>
    </div>

    <div id="hidden-stable" class="container" style="overflow-y: hidden; scrollbar-gutter: stable">
      <div class="content"></div>
    </div>
  </div>

  <div class="line">
    <div id="auto-stable-both" class="container" style="overflow-y: auto; scrollbar-gutter: stable both-edges">
      <div class="content"></div>
    </div>

    <div id="scroll-stable-both" class="container" style="overflow-y: scroll; scrollbar-gutter: stable both-edges">
      <div class="content"></div>
    </div>

    <div id="hidden-stable-both" class="container" style="overflow-y: hidden; scrollbar-gutter: stable both-edges">
      <div class="content"></div>
    </div>
  </div>
<script>
  requestAnimationFrame(() => requestAnimationFrame(() => {
    document.getElementById('auto-auto').style.scrollbarGutter = 'stable both-edges';
    document.getElementById('scroll-auto').style.scrollbarGutter = 'stable both-edges';
    document.getElementById('hidden-auto').style.scrollbarGutter = 'stable both-edges';
    document.getElementById('auto-stable').style.scrollbarGutter = 'auto';
    document.getElementById('scroll-stable').style.scrollbarGutter = 'auto';
    document.getElementById('hidden-stable').style.scrollbarGutter = 'auto';
    document.getElementById('auto-stable-both').style.scrollbarGutter = 'stable';
    document.getElementById('scroll-stable-both').style.scrollbarGutter = 'stable';
    document.getElementById('hidden-stable-both').style.scrollbarGutter = 'stable';
    takeScreenshot();
  }));
</script>
</html>