| <!DOCTYPE html> | |
| <meta charset="UTF-8"> | |
| <title>Canvas size dynamic change in flexbox layout</title> | |
| <link rel="help" href="https://drafts.csswg.org/css-flexbox/#flex-items"> | |
| <meta name="assert" content="This test ensures proper layouting of canvas element as flex-items"/> | |
| <link href="support/flexbox.css" rel="stylesheet"> | |
| <style> | |
| .red { | |
| width: 600px; | |
| height: 400px; | |
| background: red; | |
| } | |
| canvas { | |
| background: green; | |
| } | |
| </style> | |
| <script src="/resources/testharness.js"></script> | |
| <script src="/resources/testharnessreport.js"></script> | |
| <script src="/resources/check-layout-th.js"></script> | |
| <div id=log></div> | |
| <div class="red"> | |
| <div class="flexbox column"> | |
| <!-- The height=400 attribute makes the aspect ratio be 300x400. 300 from | |
| the fallback width of replaced elements. 400 from the attribute. | |
| After stretching to 600px wide, the height should be 800px. --> | |
| <canvas id="canvas" data-expected-height="800"></canvas> | |
| </div> | |
| </div> | |
| <script> | |
| var canvas = document.getElementById('canvas'); | |
| requestAnimationFrame(function() { | |
| canvas.height = 400; | |
| checkLayout('.flexbox'); | |
| }); | |
| </script> |