summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-position/crashtests/scroll-tree-parent-construction.html
blob: 8a5bf54253810b8dfd65eb3b5d193ad54e7831bb (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
<!DOCTYPE HTML>
<html class="test-wait">
<head>
<style>
  #ifr { border: 5px solid #ddd; width: 200px; height: 150px; }
</style>
</head>
<body>
<iframe id=ifr srcdoc="
  <style>
  body { margin: 0 }
  * { box-sizing: border-box }
  .c1 { width: 90px; height: 300px; }
  .f1 {
    position: fixed;
    background: #ddf;
    left: 30px;
    top: 10px;
    width: 120px;
    height: 120px;
  }
  .s1 {
    overflow: scroll;
    margin: 10px;
    height: 100px;
    width: 100px;
    border: 5px solid gray;
  }
  </style>
  <div class=c1>AAA</div>
  <div class=f1>
    <div class=s1>
      <div class=c1>AAA</div>
    </div>
  </div>"></iframe>
<script>
  raf = async () => {
    return new Promise(resolve => {
      requestAnimationFrame(resolve);
    });
  }
  onload = async () => {
    await raf();
    await raf();
    ifr.contentWindow.location.reload();
    for (let i = 0; i < 10; i++)
      await raf();
    document.documentElement.className = "";
  };
</script>
</body>
</html>