blob: 70ffbf3e1576e8d73a027dae733496c587d16152 [file] [log] [blame]
<!doctype html>
<html>
<head>
<title>Test of animation-direction on composited elements</title>
<style>
body {
margin: 0;
}
.box {
position: relative;
left: 20px;
top: 10px;
height: 50px;
width: 250px;
margin-bottom: 10px;
animation-duration: 2s;
animation-timing-function: linear;
animation-iteration-count: 8;
}
.move1 {
animation-name: move1;
background-color: blue;
color: white;
}
.move2 {
animation-name: move2;
background-color: orange;
}
.normal {
animation-direction: normal;
}
.alternate {
animation-direction: alternate;
}
.reverse {
animation-direction: reverse;
}
.alternate-reverse {
animation-direction: alternate-reverse;
}
@keyframes move1 {
from { transform: translateX(0px); }
to { transform: translateX(200px); }
}
@keyframes move2 {
0% { transform: translateX(0px); }
40% { transform: translateX(160px); }
60% { transform: translateX(120px); }
100% { transform: translateX(200px); }
}
</style>
<script src="../resources/animation-test-helpers.js"></script>
<script>
const expectedValues = [
// [time, element-id, property, expected-value, tolerance]
[0.2, "box1", "transform", [1,0,0,1, 20,0], 20],
[0.2, "box2", "transform", [1,0,0,1, 20,0], 20],
[0.2, "box3", "transform", [1,0,0,1, 180,0], 20],
[0.2, "box4", "transform", [1,0,0,1, 180,0], 20],
[2.2, "box1", "transform", [1,0,0,1, 20,0], 20],
[2.2, "box2", "transform", [1,0,0,1, 180,0], 20],
[2.2, "box3", "transform", [1,0,0,1, 180,0], 20],
[2.2, "box4", "transform", [1,0,0,1, 20,0], 20],
[0.2, "box5", "transform", [1,0,0,1, 40,0], 20],
[0.2, "box6", "transform", [1,0,0,1, 40,0], 20],
[0.2, "box7", "transform", [1,0,0,1, 180,0], 20],
[0.2, "box8", "transform", [1,0,0,1, 180,0], 20],
[2.2, "box5", "transform", [1,0,0,1, 40,0], 20],
[2.2, "box6", "transform", [1,0,0,1, 180,0], 20],
[2.2, "box7", "transform", [1,0,0,1, 180,0], 20],
[2.2, "box8", "transform", [1,0,0,1, 40,0], 20],
];
runAnimationTest(expectedValues);
</script>
</head>
<body>
<div id="box1" class="box move1 normal">2 keyframes: normal</div>
<div id="box2" class="box move1 alternate">2 keyframes: alternate</div>
<div id="box3" class="box move1 reverse">2 keyframes: reverse</div>
<div id="box4" class="box move1 alternate-reverse">2 keyframes: alternate-reverse</div>
<div id="box5" class="box move2 normal">4 keyframes: normal</div>
<div id="box6" class="box move2 alternate">4 keyframes: alternate</div>
<div id="box7" class="box move2 reverse">4 keyframes: reverse</div>
<div id="box8" class="box move2 alternate-reverse">4 keyframes: alternate-reverse</div>
<div id="result"></div>
</div>
</body>
</html>