<!DOCTYPE html>
<!-- Any copyright is dedicated to the Public Domain.
   - http://creativecommons.org/publicdomain/zero/1.0/ -->

<html>
  <meta charset="utf-8">
  <title>CSS Shape Test: float right, padding-box reference</title>
  <link rel="author" title="Ting-Yu Lin" href="mailto:tlin@mozilla.com">
  <link rel="author" title="Mozilla" href="http://www.mozilla.org/">
  <style>
  .container {
    direction: rtl;
    width: 175px;
    line-height: 0;
  }

  .shape {
    float: right;
    /* Omit shape-outside: padding-box; */
    box-sizing: content-box;
    height: 25px;
    width: 25px;
    padding: 25px;
    border-right: 25px solid lightgreen;
    margin-right: 25px;
    background-color: orange;
  }

  .box {
    display: inline-block;
    width: 25px;
    height: 25px;
    background-color: blue;
  }

  .longbox {
    display: inline-block;
    width: 175px;
    height: 25px;
    background-color: blue;
  }
  </style>

  <main class="container">
    <div class="longbox"></div> <!-- Saturate the margin space -->
    <div class="longbox"></div> <!-- Saturate the border space -->
    <div class="shape"></div>
    <div class="box"></div>
    <div class="box"></div>
    <div class="box"></div>
    <div class="longbox"></div> <!-- Saturate the border space -->
    <div class="longbox"></div> <!-- Saturate the margin space -->

    <div class="longbox"></div> <!-- Saturate the margin space -->
    <div class="longbox"></div> <!-- Saturate the border space -->
    <div class="shape"></div>
    <div class="box"></div>
    <div class="box"></div>
    <div class="box"></div>
    <div class="longbox"></div> <!-- Saturate the border space -->
    <div class="longbox"></div> <!-- Saturate the margin space -->
  </main>
</html>
