summaryrefslogtreecommitdiffstats
path: root/testing/web-platform/tests/css/css-flexbox/flexbox-with-pseudo-elements-003.html
diff options
context:
space:
mode:
Diffstat (limited to 'testing/web-platform/tests/css/css-flexbox/flexbox-with-pseudo-elements-003.html')
-rw-r--r--testing/web-platform/tests/css/css-flexbox/flexbox-with-pseudo-elements-003.html67
1 files changed, 67 insertions, 0 deletions
diff --git a/testing/web-platform/tests/css/css-flexbox/flexbox-with-pseudo-elements-003.html b/testing/web-platform/tests/css/css-flexbox/flexbox-with-pseudo-elements-003.html
new file mode 100644
index 0000000000..fe531b126f
--- /dev/null
+++ b/testing/web-platform/tests/css/css-flexbox/flexbox-with-pseudo-elements-003.html
@@ -0,0 +1,67 @@
+<!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>