blob: e7ac419edd1344f50b6c4c022224a98cdb4a5217 [file] [log] [blame]
<!DOCTYPE html>
<!--
| In a scroll container, elements' translateX should be honored in RTL mode.
| https://www.w3.org/TR/CSS21/visufx.html
-->
<html>
<head>
<style>
.scroll {
overflow: auto;
position: absolute;
background-color: rgb(75, 75, 75);
width: 540px;
height: 320px;
}
.focusItem {
overflow: hidden;
position: absolute;
width: 300px;
height: 300px;
outline: none;
}
.focusContent {
overflow: hidden;
margin: 20px;
border: 5px solid rgb(0, 0, 0);
width: 250px;
height: 250px;
line-height: 250px;
text-align: center;
vertical-align: middle;
font-size: 100px;
}
/*
* Update focusContent when the parent is focused.
*/
.focusItem:focus .focusContent {
background-color: rgb(240, 240, 240);
}
</style>
</head>
<body>
<div class="scroll" dir="rtl" id="scroller">
<!--
| translateX() should be honored when computing items' position in rtl mode.
| When page is rendered, A0 should be focused, the right edge of A0 should
| be 100px from the right edge of the container, and container's scrollLeft
| should be 0.
-->
<div id="start" class="focusItem" tabindex="-2" style="transform: translateX(-100px)">
<div class="focusContent">A0</div>
</div>
<div class="focusItem" tabindex="-2" style="transform: translateX(-400px)">
<div class="focusContent">A1</div>
</div>
</div>
</body>
<script>
window.onload = function () {
document.getElementById("start").focus();
var scroller = document.getElementById("scroller");
if (scroller.scrollLeft != 0) {
console.log("FAIL" +
"\nValue of: scrollLeft" +
"\n Actual: " + scroller.scrollLeft +
"\nExpected: " + "0");
document.body.style.backgroundColor = "#FF0000";
}
if (window.testRunner) {
window.testRunner.notifyDone();
}
}
</script>
</html>