<!DOCTYPE html>
<html>
<head>
    <style type="text/css">
    #multicol {
        border: thin solid green;
        height: 300px;
        width: 200px;
        text-align: justify;
    }
    </style>
</head>
<body>
    <p><a href="https://bugs.webkit.org/show_bug.cgi?id=135127">b135127</a>: The test passes if it doesn't hang or crash</p>
    <div id="multicol">
        <div id="remove">A</div>Text text text text text text text text <div id="remove2">A</div>Text text text text Text text text text Text text text text text text text text
    </div>
    <script type="text/javascript">
    if (window.testRunner)
        window.testRunner.dumpAsText();

    var multicolElement = document.getElementById("multicol");
    var removeElement = document.getElementById("remove");
    var removeElement2 = document.getElementById("remove2");

    removeElement.remove();
    removeElement2.remove();
    document.body.offsetTop;

    multicolElement.style.webkitColumnCount = "2";
    document.body.offsetTop;

    multicolElement.appendChild(removeElement);
    multicolElement.appendChild(removeElement2);
    document.body.offsetLeft;
    multicolElement.style.webkitColumnCount = "auto";
    document.body.offsetLeft;

    multicolElement.remove();
    </script>
</body>
</html>
