<?xml version="1.0" encoding="UTF-8"?>
<!--
     Any copyright is dedicated to the Public Domain.
     http://creativecommons.org/publicdomain/zero/1.0/
-->
<!-- Testcase for behavior of 'baseline' and 'last baseline' values
     for align-items (and align-self, implicitly). This test confirms
     non-interference between the 'baseline' and 'last baseline' items.
-->
<html xmlns="http://www.w3.org/1999/xhtml">
  <head>
    <title>CSS Test: Baseline alignment of block flex items with 'baseline' and 'last-baseline' values for 'align-self' against each other.</title>
    <link rel="author" title="Brad Werth" href="mailto:bwerth@mozilla.com"/>
    <link rel="help" href="http://www.w3.org/TR/css-flexbox-1/#baseline-participation"/>
    <link rel="match" href="flexbox-align-self-baseline-horiz-007-ref.xhtml"/>
    <style>
      .container {
        display: flex;
        border: 1px dashed blue;
        font: 14px sans-serif;
        height: 50px;
      }

      .base      { align-self: baseline; }
      .lastbase { align-self: last baseline; }

      .offset { margin-top: 10px;
                margin-bottom: 3px; }

      .lime   { background: lime;   }
      .yellow { background: yellow; }
      .orange { background: orange; }
      .pink   { background: pink;   }
    </style>
  </head>
  <body>
    <div class="container">
      <div class="lime base">one line (first)</div>
      <div class="yellow lastbase">one line (last)</div>
      <div class="orange offset lastbase">two<br/>lines and offset (last)</div>
      <div class="pink offset base">offset (first)</div>
    </div>
  </body>
</html>
