<!DOCTYPE html>
<html>
<head>
    <title>CSS Test: shape-outside with open areas on both the left & right of 
           the float area</title>
    <link rel="author" title="Rebecca Hauck" href="mailto:rhauck@adobe.com"/>
    <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#relation-to-box-model-and-float-behavior"/>
    <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#supported-basic-shapes"/>
    <link rel="help" href="http://www.w3.org/TR/css-shapes-1/#shape-outside-property"/>
    <link rel="match" href="reference/shape-outside-006-ref.html"/>
    <meta name="flags" content="ahem"/>
    <meta name="assert" content="This test verifies that content wraps only on one side of 
                                 the float even though there is open area on both the left
                                 and right sides of the float."/>
     <!--  This test is derived from Example 4 in this version of the spec:
          http://www.w3.org/TR/2013/WD-css-shapes-1-20131203/  -->
    <style type="text/css">
        .container {
          width: 250px;
          font-family: Ahem;
          font-size: 20px;
          line-height: 1.5em;
          border: 1px solid black;
          padding-top: 5px;
        }
        #test {
            color: green;
        }
        #test-float-left {
          -webkit-shape-outside: polygon(50px 0px, 100px 100px, 0px 100px);
          float: left;
          width: 100px;
          height: 100px;
        }
        #failure-container {
            z-index: -1;
        }
        #test, #failure-container {
            position: absolute;
            top: 70px;
        }
        .fail {
            position: absolute;
            height: 20px;
            background-color: red;
        }
        #bar-1 {
            top: 11px;
            left: 66px;
            width: 160px;
        }
        #bar-2 {
            top: 41px;
            left: 81px;
            width: 140px;
        }
        #bar-3 {
            top: 71px;
            left: 96px;
            width: 120px;
        }
        #triangle {
            position: absolute;
            top: 70px;
            width: 100px;
            height: 100px;
            background-color: lightblue;
            -webkit-clip-path: polygon(50px 0px, 100px 100px, 0px 100px);
        }
        
    </style>
</head>
<body>
    <p>
        The test passes if all there are three green horizontal bars to the right of the
        triangle that are all inside the rectangle and there should be no green to the left
        of the triangle. There should be no red.
    </p>
    <div id="test" class="container">
        <div id="test-float-left"></div>
        XXXXXXXX XXXXXXX XXXXXX
    </div>
    <div id="failure-container">
        <div id="bar-1" class="fail"></div>
        <div id="bar-2" class="fail"></div>
        <div id="bar-3" class="fail"></div>
    </div>
    <div id="triangle"></div>
</body>
</html>