<!DOCTYPE html>
<html>
<head>
<style>
#testElement { 
margin-top: 1.5px;
margin-right: 2.5px;
margin-bottom: 3.5px;
margin-left: 4.5px;

padding-top: 5.5px;
padding-right: 6.5px;
padding-bottom: 7.5px;
padding-left: 8.5px;
}
</style>
<script src="../../../resources/js-test-pre.js"></script>
</head>
<body>
<div id="testElement"></div>
<script>

description('Test calling getPropertyValue on computed margin styles.');

var testElement = document.getElementById('testElement');
shouldBe('getComputedStyle(testElement).marginTop', '"1.5px"');
shouldBe('getComputedStyle(testElement).marginRight', '"2.5px"');
shouldBe('getComputedStyle(testElement).marginBottom', '"3.5px"');
shouldBe('getComputedStyle(testElement).marginLeft', '"4.5px"');
shouldBe('getComputedStyle(testElement).margin', '"1.5px 2.5px 3.5px 4.5px"');

shouldBe('getComputedStyle(testElement).paddingTop', '"5.5px"');
shouldBe('getComputedStyle(testElement).paddingRight', '"6.5px"');
shouldBe('getComputedStyle(testElement).paddingBottom', '"7.5px"');
shouldBe('getComputedStyle(testElement).paddingLeft', '"8.5px"');
shouldBe('getComputedStyle(testElement).padding', '"5.5px 6.5px 7.5px 8.5px"');

var successfullyParsed = true;

</script>
<script src="../../../resources/js-test-post.js"></script>
</body>
</html>
