mirror of
https://github.com/mozilla/gecko-dev.git
synced 2025-11-10 05:08:36 +02:00
Automatic update from web-platform-tests css-grid: Wait for documents.font.ready() for tests with Ahem font (#22347) web-fonts may not be ready when the window.onload signal is triggered, so to avoid flakiness or unexpected failures on the css-grid tests that use the Ahem font we should wait for the fonts to be ready before starting the test. However, that is not enough, we should also waiting for window.load before starting the tests because some tests depend on the document images to load (which may happen before or after the fonts are ready) So this patch changes the tests using Ahem to start after the load event has fired and after the fonts are ready. The tests now need to use "explicit_done: true" to avoid race conditions, so this commit also sets this tests to be explicit about when they finish. -- wpt-commits: ea0533fc00ee855b02231c8e392c3ddadb943b0f wpt-pr: 22347
104 lines
4.9 KiB
HTML
104 lines
4.9 KiB
HTML
<!DOCTYPE html>
|
|
<meta charset="utf-8">
|
|
<title>CSS Grid Layout Test: Self-Alignment of non-static absolute positioned items</title>
|
|
<link rel="author" title="Javier Fernandez Garcia-Boente" href="mailto:jfernandez@igalia.com">
|
|
<link rel="help" href="https://drafts.csswg.org/css-grid-1/#column-align">
|
|
<link rel="help" href="https://drafts.csswg.org/css-grid-1/#abspos-items">
|
|
<link rel="help" href="https://drafts.csswg.org/css-align-3/#propdef-justify-self">
|
|
<link rel="help" href="https://drafts.csswg.org/css-align-3/#propdef-align-self">
|
|
<meta name="assert" content="Alignment properties don't apply on non-static absolute positioned orthogonal grid items with borders.">
|
|
<link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
|
|
<style>
|
|
.grid {
|
|
position: relative;
|
|
display: inline-grid;
|
|
grid-template-columns: 100px 150px;
|
|
grid-template-rows: 150px 100px;
|
|
font: 10px/1 Ahem;
|
|
background: grey;
|
|
}
|
|
.grid > div { position: absolute; }
|
|
.grid > :nth-child(1) { background: green; }
|
|
.grid > :nth-child(2) { background: blue; }
|
|
.grid > :nth-child(3) { background: yellow; }
|
|
.grid > :nth-child(4) { background: red; }
|
|
|
|
.grid > div {
|
|
border-color: silver;
|
|
border-style: solid;
|
|
border-width: 5px 10px 15px 20px;
|
|
}
|
|
|
|
.RTL { direction: rtl; }
|
|
.verticalLR { writing-mode: vertical-lr; }
|
|
.verticalRL { writing-mode: vertical-rl; }
|
|
.horizontal { writing-mode: horizontal-tb; }
|
|
|
|
.firstRowFirstColumn {
|
|
grid-row: 1 / 2;
|
|
grid-column: 1 / 2;
|
|
align-self: start;
|
|
justify-self: right;
|
|
left: 5px;
|
|
}
|
|
.firstRowSecondColumn {
|
|
grid-row: 1 / 2;
|
|
grid-column: 2 / 3;
|
|
align-self: end;
|
|
justify-self: center;
|
|
right: 10px;
|
|
}
|
|
.secondRowFirstColumn {
|
|
grid-row: 2 / 3;
|
|
grid-column: 1 / 2;
|
|
align-self: center;
|
|
justify-self: start;
|
|
top: 10px
|
|
}
|
|
.secondRowSecondColumn {
|
|
grid-row: 2 / 3;
|
|
grid-column: 2 / 3;
|
|
align-self: end;
|
|
justify-self: left;
|
|
left: 5px;
|
|
top: 10px;
|
|
}
|
|
</style>
|
|
<script src="/resources/testharness.js"></script>
|
|
<script src="/resources/testharnessreport.js"></script>
|
|
<script src="/resources/check-layout-th.js"></script>
|
|
<script type="text/javascript">
|
|
setup({ explicit_done: true });
|
|
</script>
|
|
<body onload="document.fonts.ready.then(() => { checkLayout('.grid'); })">
|
|
<!-- The test cases with vertical-rl wirting-mode will fail becauuse of bug 779105 -->
|
|
<div class="grid">
|
|
<div data-offset-x="5" data-offset-y="0" data-expected-width="40" data-expected-height="80" class="firstRowFirstColumn verticalLR">X XX X</div>
|
|
<div data-offset-x="180" data-offset-y="60" data-expected-width="60" data-expected-height="90" class="firstRowSecondColumn verticalRL">XX X<br>X XXX X<br>XX XXX</div>
|
|
<div data-offset-x="0" data-offset-y="160" data-expected-width="90" data-expected-height="30" class="secondRowFirstColumn RTL">X XX X</div>
|
|
<div data-offset-x="105" data-offset-y="160" data-expected-width="70" data-expected-height="80" class="secondRowSecondColumn verticalLR RTL">XX X<br>X XXX<br>X<br>XX XXX</div>
|
|
</div>
|
|
|
|
<div class="grid RTL">
|
|
<div data-offset-x="155" data-offset-y="0" data-expected-width="40" data-expected-height="80" class="firstRowFirstColumn verticalLR">X XX X</div>
|
|
<div data-offset-x="80" data-offset-y="60" data-expected-width="60" data-expected-height="90" class="firstRowSecondColumn verticalRL">XX X<br>X XXX X<br>XX XXX</div>
|
|
<div data-offset-x="160" data-offset-y="160" data-expected-width="90" data-expected-height="30" class="secondRowFirstColumn LTR">X XX X</div>
|
|
<div data-offset-x="35" data-offset-y="160" data-expected-width="70" data-expected-height="80" class="secondRowSecondColumn verticalRL RTL">XX X<br>X XXX<br>X<br>XX XXX</div>
|
|
</div>
|
|
|
|
<br><br>
|
|
|
|
<div class="grid verticalLR">
|
|
<div data-offset-x="5" data-offset-y="70" data-expected-width="90" data-expected-height="30" class="firstRowFirstColumn horizontal">X XX X</div>
|
|
<div data-offset-x="40" data-offset-y="150" data-expected-width="100" data-expected-height="50" class="firstRowSecondColumn horizontal">XX X<br>X XXX X<br>XX XXX</div>
|
|
<div data-offset-x="180" data-offset-y="10" data-expected-width="40" data-expected-height="80" class="secondRowFirstColumn verticalRL">X XX X</div>
|
|
<div data-offset-x="155" data-offset-y="110" data-expected-width="90" data-expected-height="60" class="secondRowSecondColumn horizontal RTL">XX X<br>X XXX<br>X<br>XX XXX</div>
|
|
</div>
|
|
|
|
<div class="grid verticalRL">
|
|
<div data-offset-x="105" data-offset-y="70" data-expected-width="90" data-expected-height="30" class="firstRowFirstColumn horizontal">X XX X</div>
|
|
<div data-offset-x="140" data-offset-y="150" data-expected-width="100" data-expected-height="50" class="firstRowSecondColumn horizontal">XX X<br>X XXX X<br>XX XXX</div>
|
|
<div data-offset-x="5" data-offset-y="10" data-expected-width="90" data-expected-height="30" class="secondRowFirstColumn horizontal RTL">X XX X</div>
|
|
<div data-offset-x="5" data-offset-y="115" data-expected-width="70" data-expected-height="80" class="secondRowSecondColumn verticalLR">XX X<br>X XXX<br>X<br>XX XXX</div>
|
|
</div>
|
|
</body>
|