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 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 89 90 91 92 93 94 95 96 97 98 99 100 101 102
|
<!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([{bottom: '3em'}, {bottom: '5em'}], 10);
player.pause();
player.currentTime = 5;
element.style.fontSize = '20px';
assert_equals(getComputedStyle(element).bottom, '80px');
}, 'bottom responsive to style changes');
test(function() {
element.style.fontSize = '10px';
var player = element.animate([{height: '3em'}, {height: '5em'}], 10);
player.pause();
player.currentTime = 5;
element.style.fontSize = '20px';
assert_equals(getComputedStyle(element).height, '80px');
}, 'height responsive to style changes');
test(function() {
element.style.fontSize = '10px';
var player = element.animate([{letterSpacing: '3em'}, {letterSpacing: '5em'}], 10);
player.pause();
player.currentTime = 5;
element.style.fontSize = '20px';
assert_equals(getComputedStyle(element).letterSpacing, '80px');
}, 'letterSpacing responsive to style changes');
test(function() {
var player = element.animate([{letterSpacing: 'normal'}, {letterSpacing: 'normal'}], 10);
player.pause();
player.currentTime = 5;
assert_equals(getComputedStyle(element).letterSpacing, 'normal');
}, 'letterSpacing can be normal');
test(function() {
element.style.fontSize = '10px';
var player = element.animate([{marginRight: '3em'}, {marginRight: '5em'}], 10);
player.pause();
player.currentTime = 5;
element.style.fontSize = '20px';
assert_equals(getComputedStyle(element).marginRight, '80px');
}, 'marginRight responsive to style changes');
test(function() {
element.style.fontSize = '10px';
container.style.width = '300px';
var player = element.animate([{marginRight: '3em'}, {marginRight: '50%'}], 10);
player.pause();
player.currentTime = 5;
element.style.fontSize = '20px';
container.style.width = '600px';
assert_equals(getComputedStyle(element).marginRight, '180px');
}, 'marginRight allows percentages');
test(function() {
element.style.fontSize = '10px';
var player = element.animate([{outlineOffset: '3em'}, {outlineOffset: '5em'}], 10);
player.pause();
player.currentTime = 5;
element.style.outline = 'dashed thin';
element.style.fontSize = '20px';
assert_equals(getComputedStyle(element).outlineOffset, '80px');
}, 'outlineOffset responsive to style changes');
test(function() {
container.style.fontSize = '10px';
var player = container.animate([{perspective: '3em'}, {perspective: '5em'}], 10);
player.pause();
player.currentTime = 5;
container.style.fontSize = '20px';
assert_equals(getComputedStyle(container).perspective, '80px');
}, 'perspective responsive to style changes');
test(function() {
var player = element.animate([{perspective: 'none'}, {perspective: 'none'}], 10);
player.pause();
player.currentTime = 10;
assert_equals(getComputedStyle(element).perspective, 'none');
}, 'perspective can be none');
test(function() {
element.style.fontSize = '10px';
var player = element.animate([{wordSpacing: '3em'}, {wordSpacing: '5em'}], 10);
player.pause();
player.currentTime = 5;
element.style.fontSize = '20px';
assert_equals(getComputedStyle(element).wordSpacing, '80px');
}, 'wordSpacing responsive to style changes');
</script>
|