| 12
 3
 4
 5
 6
 7
 8
 9
 10
 11
 12
 13
 14
 15
 16
 17
 18
 19
 20
 21
 22
 23
 24
 25
 26
 27
 28
 29
 30
 31
 32
 33
 34
 35
 36
 37
 38
 39
 40
 41
 42
 43
 44
 45
 46
 47
 48
 49
 50
 51
 52
 53
 54
 55
 56
 57
 58
 59
 60
 61
 62
 63
 64
 65
 66
 67
 68
 69
 70
 71
 72
 73
 74
 75
 76
 77
 78
 79
 80
 81
 82
 83
 84
 85
 86
 87
 88
 89
 90
 91
 92
 93
 94
 95
 96
 97
 98
 99
 100
 101
 
 | <!DOCTYPE html>
<html>
<head>
    <title>CSS Test: Left and right float with shape-outside</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-001-ref.html"/>
    <meta name="flags" content="ahem"/>
    <meta name="assert" content="This test verifies that left floats with a shape-outside
     only allow content wrapping on the right side, and right floats only allow wrapping on
     the left."/>
    <!-- This test is derived from Example 1 in this version of the spec:
         http://www.w3.org/TR/2013/WD-css-shapes-1-20131203/ -->
    <link rel="stylesheet" type="text/css" href="/fonts/ahem.css" />
    <style type="text/css">
        body {
            margin-left: 0;
        }
        .container {
          width: 400px;
          text-align: center;
          font-family: Ahem;
          font-size: 20px;
          line-height: 1em;
        }
        #test {
            color: green;
        }
        #test-float-left {
          shape-outside: polygon(0 0, 200px 200px, 0 200px);
          float: left;
          width: 200px;
          height: 200px;
        }
        #test-float-right {
          shape-outside: polygon(200px 0, 200px 200px, 0 200px);
          float: right;
          width: 200px;
          height: 200px;
        }
        #failure-container {
            color: red;
            z-index: -1;
        }
        #test, #failure-container {
            position: absolute;
            top: 60px;
        }
        .line {
            height: 20px;
        }
        #bottom {
            position: absolute;
            top: 200px;
        }
        #left-triangle, #right-triangle {
            position: absolute;
            top: 60px;
            width: 200px;
            height: 200px;
            background-color: lightblue;
        }
        #left-triangle {
            clip-path: polygon(0 0, 200px 200px, 0 200px);
        }
        #right-triangle {
            left: 200px;
            clip-path: polygon(200px 0, 200px 200px, 0 200px);
        }
    </style>
</head>
<body>
    <p>
        The test passes if the green shape does not intersect either of the triangles and
        there is one green horizontal bar beneath the triangles. There should be no red.
    </p>
    <div id="test" class="container">
        <div id="test-float-left"></div>
        <div id="test-float-right"></div>
        XXXXXXXXXXXXXXXXX XXXXXXXXXXXXXXX XXXXXXXXXXXXX
        XXXXXXXXXXX XXXXXXXXX XXXXXXX XXXXX XXX X
        XXXXXXXXXXXXXXXXX
    </div>
    <div id="failure-container">
       <div class="line container">XXXXXXXXXXXXXXXXX</div>
       <div class="line container">XXXXXXXXXXXXXXX</div>
       <div class="line container">XXXXXXXXXXXXX</div>
       <div class="line container">XXXXXXXXXXX</div>
       <div class="line container">XXXXXXXXX</div>
       <div class="line container">XXXXXXX</div>
       <div class="line container">XXXXX</div>
       <div class="line container">XXX</div>
       <div class="line container">X</div>
       <div class="line container" id="bottom">XXXXXXXXXXXXXXXXX</div>
    </div>
    <div id="left-triangle"></div>
    <div id="right-triangle"></div>
</body>
</html>
 |