| <!DOCTYPE html> |
| <script src="../../resources/testharness.js"></script> |
| <script src="../../resources/testharnessreport.js"></script> |
| <div id='container'> |
| <div id='element'></div> |
| </div> |
| <script> |
| |
| 'use strict'; |
| var container = document.getElementById('container'); |
| var element = document.getElementById('element'); |
| |
| var properties = [ |
| 'fillOpacity', |
| 'floodOpacity', |
| 'opacity', |
| 'shapeImageThreshold', |
| 'stopOpacity', |
| 'strokeOpacity', |
| ]; |
| |
| for (var property of properties) { |
| test(function() { |
| var initialKeyframe = {}; |
| initialKeyframe[property] = 'inherit'; |
| var finalKeyframe = {}; |
| finalKeyframe[property] = '0.5'; |
| var keyframes = [ initialKeyframe, finalKeyframe ]; |
| |
| container.style[property] = 1; |
| var player = element.animate(keyframes, 10); |
| |
| player.pause(); |
| player.currentTime = 5; |
| assert_equals(getComputedStyle(element)[property], '0.75'); |
| |
| container.style[property] = 0.25; |
| assert_equals(getComputedStyle(element)[property], '0.375'); |
| |
| container.style[property] = -0.5; // clamps to 0 |
| assert_equals(getComputedStyle(element)[property], '0.25'); |
| |
| container.style[property] = 2; // clamps to 1 |
| assert_equals(getComputedStyle(element)[property], '0.75'); |
| }, property + ' responsive to inherited changes'); |
| } |
| |
| </script> |