| <!DOCTYPE html> |
| <script src="../resources/runner.js"></script> |
| <div style="display: flex; width: 600px; height: 600px;"> |
| <div style="width: 200px;"></div> |
| <div style="display: flex; flex-direction: column; flex-grow: 1; overflow-y: auto;"> |
| <div style="flex-grow: 1; position: relative;"> |
| <div style="position: absolute; width: 100%; height: 100%; display: flex; flex-direction: column;"> |
| <div id="container" style="overflow-y: auto;"></div> |
| </div> |
| </div> |
| <div id="target" style="min-height: 20px"></div> |
| </div> |
| </div> |
| <script> |
| const container = document.getElementById('container'); |
| for (let i = 0; i < 500; i++) { |
| const child = document.createElement('div'); |
| child.innerText = 'This is some placeholder text.'; |
| container.appendChild(child); |
| } |
| |
| const target = document.getElementById('target'); |
| PerfTestRunner.measureRunsPerSecond({ |
| description: 'Measures performance of a series of nested flexboxes with input changing.', |
| run: () => { |
| target.innerText = Math.random(); |
| PerfTestRunner.forceLayout(); |
| }, |
| done: () => { |
| document.body.children[0].style.display = 'none'; |
| } |
| }); |
| </script> |