summaryrefslogtreecommitdiffstats
path: root/layout/reftests/async-scrolling/position-fixed-in-scroll-container.html
blob: 0874aa67a5523539ae2bd5af07e982cdcaaa5c3a (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
<!DOCTYPE html>
<html reftest-async-scroll>
<!-- In this test, the div |fixed| is fixed with respect to the
     page's root scroll frame, but there's also a subframe |scrollbox|
     which is async-scrolled and which generates a container layer
     (because of the opacity), so that its async transform is on an
     ancestor layer of |fixed|'s layer. We are testing that this
     async transform is correctly unapplied to keep |fixed| fixed. -->
<style>

body {
  height: 10000px;
}

.outer-opacity {
  opacity: 0.8;
}

.scrollbox {
  border: 1px solid black;
  width: 200px;
  height: 400px;
  overflow: scroll;
  scrollbar-width: none;
}

.inner-opacity {
  height: 1000px;
  opacity: 0.8;
}

.fixed {
  background: blue;
  width: 100px;
  height: 100px;
  position: fixed;
}

</style>
<div class="outer-opacity">
  <div class="scrollbox"
       reftest-displayport-x="0" reftest-displayport-y="0"
       reftest-displayport-w="200" reftest-displayport-h="1000"
       reftest-async-scroll-x="0" reftest-async-scroll-y="50">
    <div class="inner-opacity">
      <div class="fixed"></div>
    </div>
  </div>
</div>
</html>