chromium/third_party/blink/web_tests/external/wpt/css/css-shapes/shape-outside/assorted/float-should-push.html

<!DOCTYPE HTML>
<meta charset="utf-8">
<title>Ensure shape-outside floats that don't cover their margin-rect affect layout properly</title>
<link rel="author" title="Brad Werth" href="mailto:[email protected]">
<link rel="author" title="Mozilla" href="http://www.mozilla.org/">
<link rel="help" href="https://drafts.csswg.org/css-shapes-1/">
<link rel="match" href="reference/float-should-push-ref.html">
<meta name="assert" content="Test that a too-wide inline block clear floats defined by shape-outside shapes that don't reach the top of the margin rect.">

<style>
  body {
    margin: 0px;
    line-height: 1;
  }

  .container {
    width: 300px;
    height: 100px;
    background: lightgray;
  }

  .too-wide {
    display: inline-block;
    width: 250px;
    height: 20px;
    background: lightblue;
  }

  .shape {
    background: black;
    width: 100px;
    height: 100px;
    float: left;
  }

  .spacer {
    clear: left;
    height: 30px;
  }

  .inset {
    background: orange;
    shape-outside: inset(1px 0px 0px 0px);
  }

  .polygon {
    background: pink;
    shape-outside: polygon(0px 0px, 100px 0px, 100px 100px, 0px 100px);
  }

  .image {
    background: brown;
    shape-outside: linear-gradient(0deg, black, black 100%);
  }

</style>

<p>All light blue bars should be pushed below the square floats, regardless of how those floats are defined.</p>

<div class="container">
<div class="shape inset">inset(1px) at top</div>
<span class="too-wide"></span>
</div>

<div class="spacer"></div>

<div class="container">
<div class="shape polygon">polygon</div>
<span class="too-wide"></span>
</div>

<div class="spacer"></div>

<div class="container">
<div class="shape image">image</div>
<span class="too-wide"></span>
</div>