<!DOCTYPE html>
<html>
<!-- Submitted from TestTWF Paris -->
<head>
    <title>CSS Transforms Test: 3d transform polygon cycle</title>
    <link rel="author" title="Leo Ziegler" href="mailto:leo.ziegler@gmail.com">
    <meta name="flags" content="svg">
     <style type="text/css">
        #container {
        	position: absolute;
        	top: 100px;
        	left: 100px;
        }
        .rect {
        	position: absolute;
        }
        #red0 {
        	background-color: red;
        	left: 6px;
        	width: 100px;
        	height: 50px;
        }
        #green0 {
        	background-color: green;
        	top: 6px;
        	width: 50px;
        	height: 100px;
        }
        #blue0 {
        	background-color: blue;
        	width: 50px;
        	height: 100px;
        	transform: translate(40px, 81px) rotate(45deg);
        }
        #red1 {
        	background-color: red;
        	width: 100px;
        	height: 50px;
        	transform: translate(94px, 0px);
        }
        #green1 {
        	background-color: green;
        	width: 50px;
        	height: 100px;
        	transform: translate(0px, 94px);
        }
        #blue1 {
        	background-color: blue;
        	width: 50px;
        	height: 100px;
        	transform: translate(102px, 19px) rotate(45deg);
        }
    </style>
</head>
<body>
    <p>The test passes if there red is over green, green is over blue and blue is over red.</p>
    <div id="container">
    	<div class="rect" id="blue0"></div>
    	<div class="rect" id="green0"></div>
    	<div class="rect" id="red0"></div>
    	<div class="rect" id="red1"></div>
    	<div class="rect" id="green1"></div>
    	<div class="rect" id="blue1"></div>
    </div>
</body>
</html>
