36 lines
1.1 KiB
HTML
36 lines
1.1 KiB
HTML
<!doctype html>
|
|
<meta charset=utf-8>
|
|
<title>The effect value of a keyframe effect: Calculating the interval
|
|
distance between keyframes</title>
|
|
<link rel="help" href="https://drafts.csswg.org/web-animations/#the-effect-value-of-a-keyframe-animation-effect">
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<script src="../../testcommon.js"></script>
|
|
<body>
|
|
<div id="log"></div>
|
|
<script>
|
|
'use strict';
|
|
|
|
test(t => {
|
|
// In Firefox there was a floating precision bug in the calculation of the
|
|
// progress at the end of the 0.2<->1.0 interval. This test exercises that
|
|
// calculation in case other UAs suffer from the same problem.
|
|
const target = createDiv(t);
|
|
const anim = target.animate(
|
|
[
|
|
{ opacity: 0 },
|
|
{ offset: 0.2, opacity: 1, easing: 'step-end' },
|
|
{ opacity: 0 },
|
|
],
|
|
{
|
|
duration: 1000,
|
|
fill: 'forwards',
|
|
}
|
|
);
|
|
|
|
anim.currentTime = 1000;
|
|
assert_equals(getComputedStyle(target).opacity, '0');
|
|
}, 'Interval distance is calculated correctly (precision test)');
|
|
|
|
</script>
|
|
</body>
|