| <!DOCTYPE html> | |
| <script src="/resources/testharness.js"></script> | |
| <script src="/resources/testharnessreport.js"></script> | |
| <div id='container'> | |
| <div id='element'></div> | |
| </div> | |
| <script> | |
| var element = document.getElementById('element'); | |
| var container = document.getElementById('container'); | |
| test(function() { | |
| element.style.fontSize = '10px'; | |
| var player = element.animate([{perspective: '3em'}, {perspective: '5em'}], 10); | |
| player.pause(); | |
| player.currentTime = 5; | |
| element.style.fontSize = '20px'; | |
| assert_equals(getComputedStyle(element).perspective, '80px'); | |
| }, 'perspective responsive to style changes'); | |
| test(function() { | |
| element.style.fontSize = '10px'; | |
| var player = element.animate([{perspective: '40px'}, {perspective: 'calc(40px - 2em)'}], 10); | |
| player.pause(); | |
| player.currentTime = 5; | |
| element.style.fontSize = '40px'; | |
| assert_equals(getComputedStyle(element).perspective, '20px'); | |
| player.currentTime = 7.5; | |
| assert_equals(getComputedStyle(element).perspective, '10px'); | |
| }, 'perspective clamped to 0px on keyframes'); | |
| test(function() { | |
| container.style.perspective = 'none'; | |
| var player = element.animate([{perspective: 'inherit'}, {perspective: '20px'}], 4000); | |
| player.pause(); | |
| player.currentTime = 1000; | |
| assert_equals(getComputedStyle(element).perspective, 'none'); | |
| container.style.perspective = '100px'; | |
| assert_equals(getComputedStyle(element).perspective, '80px'); | |
| container.style.perspective = 'none'; | |
| assert_equals(getComputedStyle(element).perspective, 'none'); | |
| }, 'perspective responsive to inherited changes'); | |
| </script> |