blob: 3f1f97cc7c90bd302f1ce2692c0c29ac8a3f0242 (
plain) (
blame)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
37
38
39
40
41
42
43
44
45
46
47
48
49
50
51
52
53
54
55
56
57
58
59
60
61
62
|
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-strict.dtd">
<!--
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.
Note that we *don't* treat the table row or cell frames themselves as flex
items, because they get wrapped in an anonymous table box, and *that* is
the flex item. So, "align-self" and "order" have no effect on the
row/cell. --><html xmlns="http://www.w3.org/1999/xhtml"><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 href="mailto:dholbert@mozilla.com" rel="author" title="Daniel Holbert" />
<link href="http://www.w3.org/TR/css-flexbox-1/#flex-items" rel="help" />
<link href="reference/flexbox-with-pseudo-elements-003-ref.xht" rel="match" />
<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;
align-self: center; /* should have no effect */
order: 1; /* should have no effect */
}
div.withAfter::after {
display: table-cell;
content: 'a';
background: lightblue;
align-self: center; /* should have no effect */
order: -1; /* should have no effect */
}
</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>
|