wpt / css / css-flexbox / flexbox-justify-content-horiz-006.xhtml

Status: FAIL | Duration: 14ms | Subtests: 0/1 | Open test on wpt.live | Open ref on wpt.live | wpt.fyi

/css/css-flexbox/flexbox-justify-content-horiz-006.xhtml

<?xml version="1.0" encoding="UTF-8"?>
<!--
     Any copyright is dedicated to the Public Domain.
     http://creativecommons.org/publicdomain/zero/1.0/
-->
<!-- Testcase to exercise each possible value of the 'justify-content'
     property, in an auto-sized horizontal flex container. -->
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>CSS Test: Testing 'justify-content' in an auto-sized reversed horizontal flex container</title>
    <link rel="author" title="Mihir Iyer" href="mailto:miyer@mozilla.com"/>
    <link rel="help" href="http://www.w3.org/TR/css-flexbox-1/#justify-content-property"/>
    <link rel="match" href="flexbox-justify-content-horiz-006-ref.xhtml"/>
    <style>
      div.flexbox {
        display: flex;
        flex-direction: row-reverse;
        width: 200px;
        margin-bottom: 2px;
      }
      div.a {
        height: 20px;
        flex: 0 10px;
        background: lightgreen;
      }
      div.b {
        height: 20px;
        flex: 0 50px;
        background: pink;
      }
      div.c {
        height: 20px;
        flex: 0 100px;
        background: orange;
      }
    </style>
  </head>
  <body>

    <!-- default (start) -->
    <div class="flexbox">
      <div class="a"/>
    </div>
    <div class="flexbox">
      <div class="a"/><div class="b"></div>
    </div>
    <div class="flexbox">
      <div class="a"/><div class="b"/><div class="c"/>
    </div>

    <!-- flex-start -->
    <div class="flexbox" style="justify-content: flex-start">
      <div class="a"/>
    </div>
    <div class="flexbox" style="justify-content: flex-start">
      <div class="a"/><div class="b"/>
    </div>
    <div class="flexbox" style="justify-content: flex-start">
      <div class="a"/><div class="b"/><div class="c"/>
    </div>

    <!-- flex-end -->
    <div class="flexbox" style="justify-content: flex-end">
      <div class="a"/>
    </div>
    <div class="flexbox" style="justify-content: flex-end">
      <div class="a"/><div class="b"/>
    </div>
    <div class="flexbox" style="justify-content: flex-end">
      <div class="a"/><div class="b"/><div class="c"/>
    </div>

    <!-- center -->
    <div class="flexbox" style="justify-content: center">
      <div class="a"/>
    </div>
    <div class="flexbox" style="justify-content: center">
      <div class="a"/><div class="b"/>
    </div>
    <div class="flexbox" style="justify-content: center">
      <div class="a"/><div class="b"/><div class="c"/>
    </div>

    <!-- space-between -->
    <div class="flexbox" style="justify-content: space-between">
      <div class="a"/>
    </div>
    <div class="flexbox" style="justify-content: space-between">
      <div class="a"/><div class="b"/>
    </div>
    <div class="flexbox" style="justify-content: space-between">
      <div class="a"/><div class="b"/><div class="c"/>
    </div>

    <!-- space-around -->
    <div class="flexbox" style="justify-content: space-around">
      <div class="a"/>
    </div>
    <div class="flexbox" style="justify-content: space-around">
      <div class="a"/><div class="b"/>
    </div>
    <div class="flexbox" style="justify-content: space-around">
      <div class="a"/><div class="b"/><div class="c"/>
    </div>

    <!-- space-evenly -->
    <div class="flexbox" style="justify-content: space-evenly">
      <div class="a"/>
    </div>
    <div class="flexbox" style="justify-content: space-evenly">
      <div class="a"/><div class="b"/>
    </div>
    <div class="flexbox" style="justify-content: space-evenly">
      <div class="a"/><div class="b"/><div class="c"/>
    </div>


    <!-- left -->
    <div class="flexbox" style="justify-content: left">
      <div class="a"/>
    </div>
    <div class="flexbox" style="justify-content: left">
      <div class="a"/><div class="b"/>
    </div>
    <div class="flexbox" style="justify-content: left">
      <div class="a"/><div class="b"/><div class="c"/>
    </div>

    <!-- right -->
    <div class="flexbox" style="justify-content: right">
      <div class="a"/>
    </div>
    <div class="flexbox" style="justify-content: right">
      <div class="a"/><div class="b"/>
    </div>
    <div class="flexbox" style="justify-content: right">
      <div class="a"/><div class="b"/><div class="c"/>
    </div>
  </body>
</html>

/css/css-flexbox/flexbox-justify-content-horiz-006-ref.xhtml

<?xml version="1.0" encoding="UTF-8"?>
<!--
     Any copyright is dedicated to the Public Domain.
     http://creativecommons.org/publicdomain/zero/1.0/
-->
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>CSS Reftest Reference</title>
    <link rel="author" title="Mihir Iyer" href="mailto:miyer@mozilla.com"/>
    <style>
      body { line-height: 0; }

      div.flexbox {
        width: 200px;
        margin-bottom: 2px;
        direction: rtl;
      }
      div.flexbox > * {
        display: inline-block;
      }
      div.a {
        height: 20px;
        width: 10px;
        background: lightgreen;
      }
      div.b {
        height: 20px;
        width: 50px;
        background: pink;
      }
      div.c {
        height: 20px;
        width: 100px;
        background: orange;
      }
      .centerParent {
        text-align: center;
      }
      .center {
        display: inline-block;
      }
    </style>
  </head>
  <body>

    <!-- default (start) -->
    <div class="flexbox">
      <div class="a"/>
    </div>
    <div class="flexbox">
      <div class="a"/><div class="b"></div>
    </div>
    <div class="flexbox">
      <div class="a"/><div class="b"/><div class="c"/>
    </div>

    <!-- flex-start -->
    <div class="flexbox">
      <div class="a"/>
    </div>
    <div class="flexbox">
      <div class="a"/><div class="b"/>
    </div>
    <div class="flexbox">
      <div class="a"/><div class="b"/><div class="c"/>
    </div>

    <!-- flex-end -->
    <div class="flexbox" style="text-align: left">
      <div class="a"/>
    </div>
    <div class="flexbox" style="text-align: left;">
      <div class="a"/><div class="b"/>
    </div>
    <div class="flexbox" style="text-align: left;">
      <div class="a"/><div class="b"/><div class="c"/>
    </div>

    <!-- center -->
    <div class="centerParent">
      <div class="flexbox">
        <div class="a"/>
      </div>
    </div>
    <div class="centerParent">
      <div class="flexbox">
        <div class="a"/><div class="b"/>
      </div>
    </div>
    <div class="centerParent">
      <div class="flexbox">
        <div class="a"/><div class="b"/><div class="c"/>
      </div>
    </div>

    <!-- space-between -->
    <div class="flexbox">
      <div class="a"/>
    </div>
    <div class="flexbox">
      <div class="a"/><div class="b" style="float: left"/>
    </div>
    <div class="flexbox">
      <div class="a" style="display:block; float: right"/>
      <div class="c" style="float:left"/>
      <!-- Use fixed-size margins to subtract space for "a" and "c", and then
           use auto margins to center 'b' within the remaining space -->
      <div style="display: block; margin-right: 10px; margin-left: 100px">
        <div class="b" style="margin: auto"/>
      </div>
    </div>

    <!-- space-around -->
    <!-- Center "a" here just as we did above in the "center" case. -->
    <div class="centerParent">
      <div class="flexbox">
        <div class="a"/>
      </div>
    </div>
    <!-- For the rest, we'll use a flex container with invisible flexible items
         instead of packing space. That's simpler than trying to hack up
         a width-independent reference case for "justify-content: space-around".
         (There are other reftests to ensure that basic flex container
         behavior is correct, so it's safe to rely on it here.) -->
    <div class="flexbox" style="display: flex">
      <div style="flex: 0.5"/>
      <div class="a"/>
      <div style="flex: 1"/>
      <div class="b"/>
      <div style="flex: 0.5"/>
    </div>
    <div class="flexbox" style="display: flex">
      <div style="flex: 0.5"/>
      <div class="a"/>
      <div style="flex: 1"/>
      <div class="b"/>
      <div style="flex: 1"/>
      <div class="c"/>
      <div style="flex: 0.5"/>
    </div>

    <!-- space-evenly -->
    <!-- Center "a" here just as we did above in the "center" case. -->
    <div class="centerParent">
      <div class="flexbox">
        <div class="a"/>
      </div>
    </div>
    <!-- As above with space-around, we'll use a flex container with invisible
         flexible items instead of packing space. -->
    <div class="flexbox" style="display: flex">
      <div style="flex: 1"/>
      <div class="a"/>
      <div style="flex: 1"/>
      <div class="b"/>
      <div style="flex: 1"/>
    </div>
    <div class="flexbox" style="display: flex">
      <div style="flex: 1"/>
      <div class="a"/>
      <div style="flex: 1"/>
      <div class="b"/>
      <div style="flex: 1"/>
      <div class="c"/>
      <div style="flex: 1"/>
    </div>


    <!-- left -->
    <div class="flexbox" style="text-align:left">
      <div class="a"/>
    </div>
    <div class="flexbox" style="text-align:left">
      <div class="a"/><div class="b"/>
    </div>
    <div class="flexbox" style="text-align:left">
      <div class="a"/><div class="b"/><div class="c"/>
    </div>

    <!-- right -->
    <div class="flexbox">
      <div class="a"/>
    </div>
    <div class="flexbox">
      <div class="a"/><div class="b"/>
    </div>
    <div class="flexbox">
      <div class="a"/><div class="b"/><div class="c"/>
    </div>

  </body>
</html>