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