141 lines
3.5 KiB
HTML
141 lines
3.5 KiB
HTML
<!DOCTYPE html>
|
|
<link rel="help" href="https://drafts.csswg.org/css-align-3/#align-abspos">
|
|
<style>
|
|
body {
|
|
margin: 0;
|
|
}
|
|
|
|
.container {
|
|
writing-mode: horizontal-tb;
|
|
direction: ltr;
|
|
display: inline-block;
|
|
position: relative;
|
|
margin: 20px;
|
|
border: solid 4px;
|
|
width: 100px;
|
|
height: 100px;
|
|
}
|
|
|
|
.item {
|
|
writing-mode: horizontal-tb;
|
|
direction: ltr;
|
|
position: absolute;
|
|
background: green;
|
|
justify-self: center;
|
|
}
|
|
|
|
.inner {
|
|
width: 20px;
|
|
height: 20px;
|
|
}
|
|
|
|
.rtl {
|
|
direction: rtl;
|
|
}
|
|
</style>
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<script src="/resources/check-layout-th.js"></script>
|
|
|
|
<body onload="checkLayout('.item')">
|
|
|
|
<!-- No overflow, centered in IMCB. -->
|
|
<div class="container">
|
|
<div class="item" style="left: 20px; right: 10px;" data-offset-x="45">
|
|
<div class="inner"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Overflows IMCB, but not CB. -->
|
|
<div class="container">
|
|
<div class="item" style="left: 20px; right: 10px;" data-offset-x="15">
|
|
<div class="inner" style="width: 80px;"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Overflows weak CB edge, shifted. -->
|
|
<div class="container">
|
|
<div class="item" style="left: 20px; right: 10px;" data-offset-x="5">
|
|
<div class="inner" style="width: 95px;"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Overflows strong CB edge, shifted. -->
|
|
<div class="container">
|
|
<div class="item" style="left: 20px; right: 10px;" data-offset-x="0">
|
|
<div class="inner" style="width: 120px;"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- No overflow, centered in IMCB. -->
|
|
<div class="container">
|
|
<div class="item" style="left: -20px; right: -10px;" data-offset-x="35">
|
|
<div class="inner"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- No overflow, centered in IMCB. -->
|
|
<div class="container">
|
|
<div class="item" style="left: -20px; right: -10px;" data-offset-x="-15">
|
|
<div class="inner" style="width: 120px;"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Overflows strong CB edge, shifted. -->
|
|
<div class="container">
|
|
<div class="item" style="left: -20px; right: -10px;" data-offset-x="-20">
|
|
<div class="inner" style="width: 160px;"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- RTL items. -->
|
|
<br>
|
|
|
|
<!-- No overflow, centered in IMCB. -->
|
|
<div class="container">
|
|
<div class="item rtl" style="left: 20px; right: 10px;" data-offset-x="45">
|
|
<div class="inner"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Overflows IMCB, but not CB. -->
|
|
<div class="container">
|
|
<div class="item rtl" style="left: 20px; right: 10px;" data-offset-x="15">
|
|
<div class="inner" style="width: 80px;"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Overflows weak CB edge, shifted. -->
|
|
<div class="container">
|
|
<div class="item rtl" style="left: 20px; right: 10px;" data-offset-x="5">
|
|
<div class="inner" style="width: 95px;"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Overflows strong CB edge, shifted. -->
|
|
<div class="container">
|
|
<div class="item rtl" style="left: 20px; right: 10px;" data-offset-x="0">
|
|
<div class="inner" style="width: 120px;"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- No overflow, centered in IMCB. -->
|
|
<div class="container">
|
|
<div class="item rtl" style="left: -20px; right: -10px;" data-offset-x="35">
|
|
<div class="inner"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- No overflow, centered in IMCB. -->
|
|
<div class="container">
|
|
<div class="item rtl" style="left: -20px; right: -10px;" data-offset-x="-15">
|
|
<div class="inner" style="width: 120px;"></div>
|
|
</div>
|
|
</div>
|
|
|
|
<!-- Overflows strong CB edge, shifted. -->
|
|
<div class="container">
|
|
<div class="item rtl" style="left: -20px; right: -10px;" data-offset-x="-20">
|
|
<div class="inner" style="width: 160px;"></div>
|
|
</div>
|
|
</div>
|