<!DOCTYPE html>
<html>
<head>
<style>
.test-row {
    display: flex;
    margin-bottom: 5px;
}
.test-row > div {
    flex: none;
}

.container {
    margin-right: 5px;
    border: 5px solid lightgreen;
    width: 100px;
}

.flexbox {
    display: block;
    height: 100px;
    width: 100px;
    overflow: auto;
}

.flexbox > div {
    width: 200px;
    height: 200px;
    background: -webkit-radial-gradient(center, ellipse cover, rgba(30,87,153,1) 0%,rgba(89,148,202,1) 62%,rgba(95,154,207,0.7) 68%,rgba(125,185,232,0) 100%);
}
</style>
</head>
<body>
    <p>Scrollbars should work in all the flexboxes.</p>
</body>
<script>
var results = [
    'left top', 'left top', 'right top', 'left bottom',
    'right top', 'right top', 'right bottom', 'left top',
    'left top', 'left top', 'left bottom', 'right top'];

var testContents = '';
for (var i = 0; i < results.length; ++i) {
    if (!(i % 4))
        testContents += "<div class='test-row'>";

    var containerClass = 'container ' + results[i];
    testContents +=
        "<div class='" + containerClass + "'>" +
        "<div class='flexbox'>" +
        "<div></div>" +
        "</div>" +
        "</div>";
    if (i % 4 == 3)
        testContents += "</div>";
}

document.body.innerHTML += testContents;

Array.prototype.forEach.call(document.querySelectorAll(".right"), function(element) {
    element.firstChild.scrollLeft = 1000;
});

Array.prototype.forEach.call(document.querySelectorAll(".bottom"), function(element) {
    element.firstChild.scrollTop = 1000;
});

</script>
</body>
</html>
