Files
tubestation/layout/reftests/w3c-css/submitted/flexbox/flexbox-with-pseudo-elements-003.html
Daniel Holbert dfe5e95b9d Bug 1253354: Update flexbox reftests that deal with table parts in a flex container; now these elements will be blockified & will become flex items. r=mats
Specific changes:
 - flexbox-table-fixup-001a.xhtml previously tested that table parts would get wrapped in an anonymous table, which would form a single flex item. This patch changes it to instead test that each table-part forms its own flex item.
 - flexbox-table-fixup-001b.xhtml previously was a "belt and suspenders" afterthought to its "001a" counterpart. It verified that flex-item properties (like "flex") had no effect on table parts in a flex container. This patch removes this test (since it's no longer valid) and renames the "001a" test to simply "001" as a result.
 - flexbox-with-pseudo-elements-003.html previously tested that ::before/::after pseudo-elements with table-part display values would have their flex-item-related properties ignored (because they'd be wrapped in an anonymous table). This patch flips that expectation, because now these pseudo-elements will directly become flex items and these properties should be honored.
2016-03-03 17:15:22 -08:00

68 lines
2.0 KiB
HTML

<!DOCTYPE html>
<!--
Any copyright is dedicated to the Public Domain.
http://creativecommons.org/publicdomain/zero/1.0/
-->
<!-- Testcase to ensure we handle ::before and ::after pseudo-elements on a
flex container, specifically when they've got display:table-row or
table-cell.
The table-row / table-cell 'display' values should be blockified, and the
pseudo-elements should be treated as flex items. (They should not get
wrapped in an anonymous table box.) -->
<html>
<head>
<title>CSS Test: Testing that generated content nodes with table-part display types are wrapped with an anonymous table, which forms a flex item</title>
<link rel="author" title="Daniel Holbert" href="mailto:dholbert@mozilla.com">
<link rel="help" href="http://www.w3.org/TR/css-flexbox-1/#flex-items">
<link rel="match" href="flexbox-with-pseudo-elements-003-ref.html">
<meta charset="utf-8">
<style>
.flexContainer {
display: flex;
align-items: flex-end;
justify-content: space-between;
height: 50px;
width: 300px;
margin-bottom: 2px;
background: lightgray;
}
div.withBefore::before {
display: table-row;
content: 'b';
background: yellow;
/* If these "align-self" & "order" properties impact the rendering (as
they should), that verifies we're being treated as a flex item. */
align-self: center;
order: 1;
}
div.withAfter::after {
display: table-cell;
content: 'a';
background: lightblue;
/* If these "align-self" & "order" properties impact the rendering (as
they should), that verifies we're being treated as a flex item. */
align-self: center;
order: -1;
}
</style>
</head>
<body>
<div class="flexContainer withBefore">
x
<div>y</div>
z
</div>
<div class="flexContainer withAfter">
x
<div>y</div>
z
</div>
<div class="flexContainer withBefore withAfter">
x
<div>y</div>
z
</div>
</body>
</html>