| <!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> |