<!DOCTYPE html>
<script>
if (window.internals) {
    internals.settings.setCSSStickyPositionEnabled(true);
}           
</script>

<html>
<head>
<style>
    body {
        margin: 0;
        height: 2000px;
        overflow: hidden; /* hide scrollbars */
        font-family: 'Ahem';
        font-size: 25px;
        line-height: 2;
    }
    
    .group {
        display: inline-block;
        position: relative;
        width: 220px;
        height: 500px;
    }
    
    .container {
        width: 200px;
        height: 400px;
        outline: 2px solid black;
    }
    
    .box {
        width: 200px;
        height: 200px;
    }

    .sticky {
        width: 200px;
        height: 200px;
        color: blue;
        position: sticky;
        top: 100px;
    }
    
    .child {
        position: absolute;
        background-color: green;
        top: 50px;
        left: 50px;
        height: 50px;
        width: 50px;
    }
    
    .indicator {
        display: none;
        position: absolute;
        top: 250px;
        left: 50px;
        background-color: red;
    }
</style>
<script>
    function doTest()
    {
        window.scrollTo(0, 100);
    }
    window.addEventListener('load', doTest, false);
</script>
</head>
<body>
    <div class="group">
        <div class="indicator box"></div>
        <div class="container">
            XXX <span class="sticky">XXXX</br>
            <div class="child box"></div>
            XXXX</br>XXXX</br>XXXX</br>XXXX</span> XXX
        </div>
    </div>
    <div class="group" style="top: 100px">
        <div class="indicator box"></div>
        <div class="container">
            XXX <span class="sticky">XXXX</br>
            <div class="child box"></div>
            XXXX</br>XXXX</br>XXXX</br>XXXX</span> XXX
        </div>
    </div>
    <div class="group" style="top: 200px">
        <div class="indicator box"></div>
        <div class="container">
            XXX <span class="sticky">XXXX</br>
            <div class="child box"></div>
            XXXX</br>XXXX</br>XXXX</br>XXXX</span> XXX
        </div>
    </div>

</body>
</html>
