<!DOCTYPE html>

<html>
<head>
    <style>

        table {
            border-collapse: collapse;
            margin: 20px;
        }

        tr {
            background-color: silver;
            border-right: 100px solid gray;
        }
        
        td {
            width: 200px;
            height: 100px;
        }
        
        .composited {
            -webkit-transform: translateZ(0);
        }
        
        td.composited {
            background-color: silver;
        }
    </style>
    <script>
        if (window.testRunner)
            testRunner.dumpAsText();

        function doTest() {
            if (window.testRunner && window.internals)
                document.getElementById('layertree').innerText = window.internals.layerTreeAsText(document);
        }
        window.addEventListener('load', doTest, false);
    </script>
</head>
<body>
<table>
    <tr class="composited">
        <td>Table cell</td>
    </tr>
</table>

<table>
    <tr>
        <td class="composited">Table cell</td>
    </tr>
</table>
<pre id="layertree"></pre> 
</body>
</html>
