summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/html/rendering/non-replaced-elements/the-page/iframe-body-margin-attributes.html
blob: e1f4fb51540f8327ed730d9ebecd26466f0a35c9 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
<!doctype html>
<title>iframe and body margin attributes</title>
<script src="/resources/testharness.js"></script>
<script src="/resources/testharnessreport.js"></script>
<body marginwidth=20 marginheight=20 topmargin=10 rightmargin=10 bottommargin=10 leftmargin=10>
<iframe data-desc="iframe marginwidth vs child body leftmargin" src="support/body-topmargin-leftmargin.html" marginwidth=10 marginheight=10></iframe>
<iframe data-desc="iframe marginwidth vs child body marginwidth" src="support/body-marginwidth-marginheight.html" marginwidth=10 marginheight=10></iframe>
<script>
setup({explicit_done: true});

onload = () => {
  test(() => {
    const style = getComputedStyle(document.body);
    assert_style_props(style);
  }, 'body marginwidth vs body leftmargin');

  [].forEach.call(document.querySelectorAll('iframe'), iframe => {
    test(() => {
      const win = iframe.contentWindow;
      const style = win.getComputedStyle(win.document.body);
      assert_style_props(style);
    }, iframe.dataset.desc);
  });
  done();
}

function assert_style_props(style) {
  for (let prop of ['marginTop', 'marginRight', 'marginBottom', 'marginLeft']) {
    assert_equals(style[prop], '20px', prop);
  }
}
</script>