summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/cssom-view/htmlelement-offset-width-001.html
blob: 9171997e2a9c59df4e4c1aaad58079593d496cf1 (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
<!DOCTYPE html>
<html>
<head>
    <title>CSSOM View - 7 - element.offsetWidth detatches correctly</title>
    <link rel="author" title="Michael Howell" href="mailto:michael@notriddle.com">
    <link rel="help" href="https://drafts.csswg.org/cssom-view-1/#dom-htmlelement-offsetwidth">
    <meta name="flags" content="dom">
    <meta name="assert" content="element.offsetWidth returns 0 when there is no documentElement.">
    <script src="/resources/testharness.js"></script>
    <script src="/resources/testharnessreport.js"></script>
</head>
<body>
    <div id="myDiv">...</div>
    <div id="log"></div>
    <script>
        test(function() {
            // These asserts need to be in this order to trigger a bug in Servo.
            var el = document.createElement("div");
            el.appendChild(document.createTextNode("..."));
            assert_equals(el.offsetWidth, 0, "new element has offset width not equal to zero");
            assert_not_equals(document.getElementById("myDiv"), 0, "element with content has offset width equal to zero");
            var html = document.removeChild(document.documentElement);
            // Put back the root element, so that testharnessreport.js can append the result.
            this.add_cleanup(function() { document.appendChild(html); });
            assert_equals(el.offsetWidth, 0, "new element has offset width not equal to zero after removing documentElement");
        });
    </script>
</body>
</html>