summaryrefslogtreecommitdiffstats
path: root/layout/reftests/transform-3d/animate-preserve3d-child.html
blob: 5ac5f290cfd92f621c02266cebc2df54c87e233f (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
<!DOCTYPE HTML>
<html class="reftest-wait">
<title>Testcase, bug 1176969</title>
<style>

body { padding: 50px }

#grandparent { perspective: 400px }

@keyframes spin {
  0%, 85% { transform: rotateX(-45deg) rotateY(-45deg) rotateZ(-45deg); }
  90%, 100% { transform: rotateX(-30deg) rotateY(-30deg) rotateZ(-30deg); }
}

#parent {
  background: blue;
  height: 200px; width: 200px;
  border: 1px solid black;
  transform-style: preserve-3d;
  /* use a -99.9s delay to start at 99.9% and then move to 0% */
  animation: spin 100s -99.9s linear 2;
}

@keyframes noop {
  from, to { transform: translateZ(15px) }
}

#child {
  height: 100px; width: 100px; margin: 50px;
  background: yellow;
  box-shadow: 3px 3px olive;
  animation: noop infinite 10s linear;
}

</style>

<div id="grandparent">
  <div id="parent">
    <div id="child">
    </div>
  </div>
</div>

<script>

document.getElementById("parent")
        .addEventListener("animationiteration", IterationListener);

function IterationListener(event) {
  setTimeout(RemoveReftestWait, 0);
}

function RemoveReftestWait() {
  document.documentElement.classList.remove("reftest-wait");
}

</script>