tor-browser

The Tor Browser
git clone https://git.dasho.dev/tor-browser.git
Log | Files | Refs | README | LICENSE

margin-rules-002.html (2488B)


      1 <!DOCTYPE html>
      2 <link rel="author" title="Morten Stenshorne" href="mailto:mstensho@chromium.org">
      3 <link rel="help" href="https://drafts.csswg.org/css-page-3/#margin-at-rules">
      4 <meta name="assert" content="Test parsing of margin rule with/without preceding/following @page properties">
      5 <style id="nothing">
      6  @page {
      7    @top-center {
      8      content: "PASS";
      9    }
     10  }
     11 </style>
     12 <style id="propertiesAfter">
     13  @page {
     14    @top-center {
     15      content: "PASS";
     16    }
     17    padding-left: 10px;
     18  }
     19 </style>
     20 <style id="propertiesBefore">
     21  @page {
     22    padding-left: 10px;
     23    @top-center {
     24      content: "PASS";
     25    }
     26  }
     27 </style>
     28 <style id="propertiesBetween">
     29  @page {
     30    padding-left: 666px;
     31    @top-left {
     32      content: "left";
     33    }
     34    padding-left: 10px;
     35    @top-right {
     36      content: "right";
     37    }
     38  }
     39 </style>
     40 <script src="/resources/testharness.js"></script>
     41 <script src="/resources/testharnessreport.js"></script>
     42 <script>
     43  test(()=>{
     44    assert_equals(nothing.sheet.rules.length, 1);
     45    let pagerule = nothing.sheet.rules[0];
     46    assert_equals(pagerule.cssRules.length, 1);
     47    let marginrule = pagerule.cssRules[0];
     48    assert_equals(marginrule.style.content, "\"PASS\"");
     49  }, "margin rule without any preceding @page properties");
     50 
     51  test(()=>{
     52    assert_equals(propertiesAfter.sheet.rules.length, 1);
     53    let pagerule = propertiesAfter.sheet.rules[0];
     54    assert_equals(pagerule.cssRules.length, 1);
     55    let marginrule = pagerule.cssRules[0];
     56    assert_equals(marginrule.style.content, "\"PASS\"");
     57    assert_equals(pagerule.style.paddingLeft, "10px");
     58  }, "margin rule followed by @page properties");
     59 
     60  test(()=>{
     61    assert_equals(propertiesAfter.sheet.rules.length, 1);
     62    let pagerule = propertiesAfter.sheet.rules[0];
     63    assert_equals(pagerule.cssRules.length, 1);
     64    let marginrule = pagerule.cssRules[0];
     65    assert_equals(marginrule.style.content, "\"PASS\"");
     66    assert_equals(pagerule.style.paddingLeft, "10px");
     67  }, "margin rule preceded by @page properties");
     68 
     69  test(()=>{
     70    assert_equals(propertiesBetween.sheet.rules.length, 1);
     71    let pagerule = propertiesBetween.sheet.rules[0];
     72    assert_equals(pagerule.cssRules.length, 2);
     73    let marginrule = pagerule.cssRules[0];
     74    assert_equals(marginrule.style.content, "\"left\"");
     75    marginrule = pagerule.cssRules[1];
     76    assert_equals(marginrule.style.content, "\"right\"");
     77    assert_equals(pagerule.style.paddingLeft, "10px");
     78  }, "margin rules with @page properties between");
     79 </script>