<html>
<head>
<script>
if (window.layoutTestController)
    layoutTestController.dumpAsText();

function runTest() {
    var container = document.createElement('div');
    container.style['-webkit-column-count'] = 1;
    document.body.appendChild(container);
    var test1 = document.createElement('div');
    test1.style['-webkit-column-span'] = 'all';
    container.appendChild(test1);
    var test2 = document.createElement('span'); 
    container.appendChild(test2);
    test2.appendChild(document.createElement('div'));
    var test3 = document.createElement('div');
    test3.style.display = 'table-column';
    container.appendChild(test3);
    container.appendChild(document.createElement('div'));
}
</script>
</head>
<body onload="runTest()">
Test passes if it does not crash.
</body>
</html>
