Source code

Revision control

Copy as Markdown

Other Tools

Test Info:

<!DOCTYPE html>
<link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
<title>Basic CSSPageRule CSSOM test</title>
<style id="sheet">
@page {}
@page :left {}
@page named { margin: 10px 20px; }
</style>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<script>
var sheet = document.getElementById("sheet").sheet;
test(()=> {
assert_not_equals(sheet, null);
assert_equals(sheet.rules.length, 3);
}, "There should be 3 @page rules.");
test(()=> {
assert_equals(sheet.rules[0].constructor.name, "CSSPageRule");
assert_equals(sheet.rules[0].selectorText, "");
assert_equals(sheet.rules[0].style.length, 0);
}, "Rule #0");
test(()=> {
assert_equals(sheet.rules[1].constructor.name, "CSSPageRule");
assert_equals(sheet.rules[1].selectorText, ":left");
assert_equals(sheet.rules[1].style.length, 0);
}, "Rule #1");
test(()=> {
assert_equals(sheet.rules[2].constructor.name, "CSSPageRule");
assert_equals(sheet.rules[2].selectorText, "named");
var style = sheet.rules[2].style;
assert_equals(style.length, 4);
assert_equals(style.marginTop, "10px");
assert_equals(style.marginRight, "20px");
assert_equals(style.marginBottom, "10px");
assert_equals(style.marginLeft, "20px");
}, "Rule #2");
</script>