blob: f0af4e93cf09010814622ba512c88dceb028f657 [file] [log] [blame]
Test to make sure top/bottom/left/right properly returns pixel values for any input.
On success, you will see a series of "PASS" messages, followed by "TEST COMPLETE".
No offsets (zero width/height)
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '200px'
PASS getComputedStyle(test).bottom is '400px'
PASS getComputedStyle(test).width is '0px'
PASS getComputedStyle(test).height is '0px'
test.setAttribute('style', 'padding: 5px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '190px'
PASS getComputedStyle(test).bottom is '390px'
PASS getComputedStyle(test).width is '0px'
PASS getComputedStyle(test).height is '0px'
test.setAttribute('style', 'border: solid 5px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '190px'
PASS getComputedStyle(test).bottom is '390px'
PASS getComputedStyle(test).width is '0px'
PASS getComputedStyle(test).height is '0px'
test.setAttribute('style', 'margin: 5px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '190px'
PASS getComputedStyle(test).bottom is '390px'
PASS getComputedStyle(test).width is '0px'
PASS getComputedStyle(test).height is '0px'
test.setAttribute('style', '')
test.parentNode.setAttribute('style', 'padding: 5px;')
PASS getComputedStyle(test).top is '5px'
PASS getComputedStyle(test).left is '5px'
PASS getComputedStyle(test).right is '205px'
PASS getComputedStyle(test).bottom is '405px'
PASS getComputedStyle(test).width is '0px'
PASS getComputedStyle(test).height is '0px'
test.parentNode.setAttribute('style', 'border: solid 5px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '200px'
PASS getComputedStyle(test).bottom is '400px'
PASS getComputedStyle(test).width is '0px'
PASS getComputedStyle(test).height is '0px'
test.parentNode.setAttribute('style', 'margin: 5px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '200px'
PASS getComputedStyle(test).bottom is '400px'
PASS getComputedStyle(test).width is '0px'
PASS getComputedStyle(test).height is '0px'
No offsets (50px width/height)
test.setAttribute('style', 'width: 50px; height: 50px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '150px'
PASS getComputedStyle(test).bottom is '350px'
PASS getComputedStyle(test).width is '50px'
PASS getComputedStyle(test).height is '50px'
test.setAttribute('style', 'width: 50px; height: 50px; padding: 5px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '140px'
PASS getComputedStyle(test).bottom is '340px'
PASS getComputedStyle(test).width is '50px'
PASS getComputedStyle(test).height is '50px'
test.setAttribute('style', 'width: 50px; height: 50px; border: solid 5px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '140px'
PASS getComputedStyle(test).bottom is '340px'
PASS getComputedStyle(test).width is '50px'
PASS getComputedStyle(test).height is '50px'
test.setAttribute('style', 'width: 50px; height: 50px; margin: 5px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '140px'
PASS getComputedStyle(test).bottom is '340px'
PASS getComputedStyle(test).width is '50px'
PASS getComputedStyle(test).height is '50px'
test.removeAttribute('style', 'margin')
test.setAttribute('style', 'width: 50px; height: 50px;')
test.parentNode.setAttribute('style', 'padding: 5px;')
PASS getComputedStyle(test).top is '5px'
PASS getComputedStyle(test).left is '5px'
PASS getComputedStyle(test).right is '155px'
PASS getComputedStyle(test).bottom is '355px'
PASS getComputedStyle(test).width is '50px'
PASS getComputedStyle(test).height is '50px'
test.parentNode.setAttribute('style', 'border: solid 5px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '150px'
PASS getComputedStyle(test).bottom is '350px'
PASS getComputedStyle(test).width is '50px'
PASS getComputedStyle(test).height is '50px'
test.parentNode.setAttribute('style', 'margin: 5px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '150px'
PASS getComputedStyle(test).bottom is '350px'
PASS getComputedStyle(test).width is '50px'
PASS getComputedStyle(test).height is '50px'
No offsets (100% width/height)
test.setAttribute('style', 'width: 100%; height: 100%;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '0px'
PASS getComputedStyle(test).bottom is '0px'
PASS getComputedStyle(test).width is '200px'
PASS getComputedStyle(test).height is '400px'
test.setAttribute('style', 'width: 100%; height: 100%; padding: 5px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '-10px'
PASS getComputedStyle(test).bottom is '-10px'
PASS getComputedStyle(test).width is '200px'
PASS getComputedStyle(test).height is '400px'
test.removeAttribute('style', 'padding')
test.setAttribute('style', 'width: 100%; height: 100%; border: solid 5px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '-10px'
PASS getComputedStyle(test).bottom is '-10px'
PASS getComputedStyle(test).width is '200px'
PASS getComputedStyle(test).height is '400px'
test.removeAttribute('style', 'border')
test.setAttribute('style', 'width: 100%; height: 100%; margin: 5px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '-10px'
PASS getComputedStyle(test).bottom is '-10px'
PASS getComputedStyle(test).width is '200px'
PASS getComputedStyle(test).height is '400px'
test.removeAttribute('style', 'margin')
test.setAttribute('style', 'width: 100%; height: 100%;')
test.parentNode.setAttribute('style', 'padding: 5px;')
PASS getComputedStyle(test).top is '5px'
PASS getComputedStyle(test).left is '5px'
PASS getComputedStyle(test).right is '-5px'
PASS getComputedStyle(test).bottom is '-5px'
PASS getComputedStyle(test).width is '210px'
PASS getComputedStyle(test).height is '410px'
test.parentNode.setAttribute('style', 'border: solid 5px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '0px'
PASS getComputedStyle(test).bottom is '0px'
PASS getComputedStyle(test).width is '200px'
PASS getComputedStyle(test).height is '400px'
test.parentNode.setAttribute('style', 'margin: 5px;')
PASS getComputedStyle(test).top is '0px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '0px'
PASS getComputedStyle(test).bottom is '0px'
PASS getComputedStyle(test).width is '200px'
PASS getComputedStyle(test).height is '400px'
% offsets (top/left)
test.setAttribute('style', 'top: 10%; left: 10%; width: 50%; height: 60%;')
PASS getComputedStyle(test).top is '40px'
PASS getComputedStyle(test).left is '20px'
PASS getComputedStyle(test).right is '80px'
PASS getComputedStyle(test).bottom is '120px'
PASS getComputedStyle(test).width is '100px'
PASS getComputedStyle(test).height is '240px'
test.parentNode.setAttribute('style', 'padding: 25px;')
PASS getComputedStyle(test).top is '45px'
PASS getComputedStyle(test).left is '25px'
PASS getComputedStyle(test).right is '100px'
PASS getComputedStyle(test).bottom is '135px'
PASS getComputedStyle(test).width is '125px'
PASS getComputedStyle(test).height is '270px'
test.parentNode.removeAttribute('style', 'padding')
test.parentNode.setAttribute('style', 'border: solid 25px;')
PASS getComputedStyle(test).top is '40px'
PASS getComputedStyle(test).left is '20px'
PASS getComputedStyle(test).right is '80px'
PASS getComputedStyle(test).bottom is '120px'
PASS getComputedStyle(test).width is '100px'
PASS getComputedStyle(test).height is '240px'
test.parentNode.removeAttribute('style', 'border')
test.parentNode.setAttribute('style', 'margin: 25px;')
PASS getComputedStyle(test).top is '40px'
PASS getComputedStyle(test).left is '20px'
PASS getComputedStyle(test).right is '80px'
PASS getComputedStyle(test).bottom is '120px'
PASS getComputedStyle(test).width is '100px'
PASS getComputedStyle(test).height is '240px'
test.parentNode.removeAttribute('style', 'margin')
% offsets (right/bottom)
test.setAttribute('style', 'right: 10%; bottom: 10%; width: 90%; height: 80%;')
PASS getComputedStyle(test).top is '40px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '20px'
PASS getComputedStyle(test).bottom is '40px'
PASS getComputedStyle(test).width is '180px'
PASS getComputedStyle(test).height is '320px'
test.parentNode.setAttribute('style', 'padding: 25px;')
PASS getComputedStyle(test).top is '45px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '25px'
PASS getComputedStyle(test).bottom is '45px'
PASS getComputedStyle(test).width is '225px'
PASS getComputedStyle(test).height is '360px'
test.parentNode.removeAttribute('style', 'padding')
test.parentNode.setAttribute('style', 'border: solid 25px;')
PASS getComputedStyle(test).top is '40px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '20px'
PASS getComputedStyle(test).bottom is '40px'
PASS getComputedStyle(test).width is '180px'
PASS getComputedStyle(test).height is '320px'
test.parentNode.removeAttribute('style', 'border')
test.parentNode.setAttribute('style', 'margin: 25px;')
PASS getComputedStyle(test).top is '40px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '20px'
PASS getComputedStyle(test).bottom is '40px'
PASS getComputedStyle(test).width is '180px'
PASS getComputedStyle(test).height is '320px'
test.parentNode.removeAttribute('style', 'margin')
em offsets
test.setAttribute('style', 'top: 1em; left: 2em; width: 3em; height: 4em;')
PASS getComputedStyle(test).top is '10px'
PASS getComputedStyle(test).left is '20px'
PASS getComputedStyle(test).right is '150px'
PASS getComputedStyle(test).bottom is '350px'
PASS getComputedStyle(test).width is '30px'
PASS getComputedStyle(test).height is '40px'
test.parentNode.setAttribute('style', 'padding: 25px;')
PASS getComputedStyle(test).top is '10px'
PASS getComputedStyle(test).left is '20px'
PASS getComputedStyle(test).right is '200px'
PASS getComputedStyle(test).bottom is '400px'
PASS getComputedStyle(test).width is '30px'
PASS getComputedStyle(test).height is '40px'
test.parentNode.setAttribute('style', 'border: solid 25px;')
PASS getComputedStyle(test).top is '10px'
PASS getComputedStyle(test).left is '20px'
PASS getComputedStyle(test).right is '150px'
PASS getComputedStyle(test).bottom is '350px'
PASS getComputedStyle(test).width is '30px'
PASS getComputedStyle(test).height is '40px'
test.parentNode.setAttribute('style', 'margin: 25px;')
PASS getComputedStyle(test).top is '10px'
PASS getComputedStyle(test).left is '20px'
PASS getComputedStyle(test).right is '150px'
PASS getComputedStyle(test).bottom is '350px'
PASS getComputedStyle(test).width is '30px'
PASS getComputedStyle(test).height is '40px'
Absolute Offsets
test.setAttribute('style', 'position: absolute; top: 30px; height: 300px;')
PASS getComputedStyle(test).top is '30px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '200px'
PASS getComputedStyle(test).bottom is '70px'
PASS getComputedStyle(test).width is '0px'
PASS getComputedStyle(test).height is '300px'
test.parentNode.setAttribute('style', 'padding: 25px;')
PASS getComputedStyle(test).top is '30px'
PASS getComputedStyle(test).left is '25px'
PASS getComputedStyle(test).right is '225px'
PASS getComputedStyle(test).bottom is '120px'
PASS getComputedStyle(test).width is '0px'
PASS getComputedStyle(test).height is '300px'
test.parentNode.setAttribute('style', 'border: solid 25px;')
PASS getComputedStyle(test).top is '30px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '200px'
PASS getComputedStyle(test).bottom is '70px'
PASS getComputedStyle(test).width is '0px'
PASS getComputedStyle(test).height is '300px'
test.parentNode.setAttribute('style', 'margin: 25px;')
PASS getComputedStyle(test).top is '30px'
PASS getComputedStyle(test).left is '0px'
PASS getComputedStyle(test).right is '200px'
PASS getComputedStyle(test).bottom is '70px'
PASS getComputedStyle(test).width is '0px'
PASS getComputedStyle(test).height is '300px'
PASS successfullyParsed is true
TEST COMPLETE