| <!DOCTYPE html> |
| <link rel="author" title="Morten Stenshorne" href="mailto:[email protected]"> |
| <link rel="help" href="https://drafts.csswg.org/cssom/#the-csspagerule-interface"> |
| <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> |