<?xml version="1.0" encoding="UTF-8"?>
<!--
     Any copyright is dedicated to the Public Domain.
     http://creativecommons.org/publicdomain/zero/1.0/
-->
<!--
     This test checks that canvas elements behave correctly as flex items.
-->
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>CSS Test: Testing flexbox layout algorithm property on canvas flex items in a horizontal flex container</title>
    <link rel="author" title="Daniel Holbert" href="mailto:dholbert@mozilla.com"/>
    <link rel="help" href="http://www.w3.org/TR/css-flexbox-1/#layout-algorithm"/>
    <link rel="match" href="flexbox-basic-canvas-horiz-001-ref.xhtml"/>
    <style>
      div.flexbox {
        width: 200px;
        background: lightgreen;
        display: flex;
        justify-content: space-between;
        margin-bottom: 5px;
        line-height: 8px;
      }
      canvas {
        min-width: 0;
        width: 10px;
        height: 20px;
        border: 1px dotted green;
      }
    </style>
  </head>
  <body>

    <!-- A) One flex item -->
    <div class="flexbox">
      <canvas/>
    </div>

    <!-- B) Text and a canvas (ensure they aren't merged into one flex item) -->
    <div class="flexbox">
      some words <canvas/>
    </div>

    <!-- C) Two canvas elements, getting stretched by different ratios, from 0.

         Space-to-be-distributed = 200px - borders = 200 - (1 + 1) - (1 + 1)
                                 = 196px

         1st element gets 5/8 of space: 5/8 * 196px = 122.5px
         1st element gets 3/8 of space: 3/8 * 196px = 73.5px
      -->
    <div class="flexbox">
      <canvas style="flex: 5"/>
      <canvas style="flex: 3"/>
    </div>

    <!-- D) Two canvas elements, getting stretched by different ratios, from
         different flex bases.

         Space-to-be-distributed = 200px - (33 + 1 + 1) - (13 + 1 + 1) = 150px
         1st element gets 2/5 of space: 33px + 2/5 * 150px = 93px
         1st element gets 3/5 of space: 13px + 3/5 * 150px = 103px
      -->
    <div class="flexbox">
      <canvas style="width: 33px; flex: 2 auto"/>
      <canvas style="width: 13px; flex: 3 auto"/>
    </div>

    <!-- E) Two flex items, getting shrunk by different amounts.

         Space-to-be-distributed = 200px - (150 + 1 + 1) - (100 + 1 + 1) = -54px
         First element scaled flex ratio = 4 * 150 = 600
         Second element scaled flex ratio = 3 * 100 = 300
           * So, total flexibility is 600 + 300 = 900

         1st element gets 600/900 of space: 150 + 600/900 * -54 = 114px
         2nd element gets 300/900 of space: 100 + 300/900 * -54 = 82px
      -->
    <div class="flexbox">
      <canvas style="width: 150px; flex: 1 4 auto"/>
      <canvas style="width: 100px; flex: 1 3 auto"/>
    </div>

    <!-- F) Making sure we don't grow past max-width -->
    <!-- Same as (D), except we've added a max-width on the second element.
      -->
    <div class="flexbox">
      <canvas style="width: 33px; flex: 2 auto"/>
      <canvas style="width: 13px; max-width: 90px; flex: 3 auto"/>
    </div>

    <!-- G) Making sure we grow at least as large as min-width -->
    <!-- Same as (C), except we've added a min-width on the second element.
      -->
    <div class="flexbox">
      <canvas style="width: 33px; flex: 2 auto"/>
      <canvas style="width: 13px; min-width: 150px; flex: 3 auto"/>
    </div>

  </body>
</html>
