| <!DOCTYPE html> |
| <link rel="help" href="https://drafts.csswg.org/css-align/#distribution-multicol"> |
| <script src="/resources/testharness.js"></script> |
| <script src="/resources/testharnessreport.js"></script> |
| |
| <style> |
| @import "/fonts/ahem.css"; |
| body { |
| font: 10px/1 Ahem; |
| margin: 0; |
| } |
| |
| #container { |
| width: 400px; |
| height: 90px; |
| columns: 2; |
| widows: 1; |
| orphans: 1; |
| } |
| </style> |
| |
| <div id="container" style="align-content: end;"> |
| <div>text<br>text</div> |
| <div style="column-span:all">span</div> |
| <div>text<br>text</div> |
| </div> |
| |
| <script> |
| const LINE_HEIGHT = 10; |
| const Result = { |
| START: 0, |
| CENTER: (90 - LINE_HEIGHT * 3) / 2, |
| END: 90 - LINE_HEIGHT * 3, |
| }; |
| const data = [ |
| ['normal', Result.START], |
| ['start', Result.START], |
| ['unsafe start', Result.START], |
| ['safe start', Result.START], |
| ['flex-start', Result.START], |
| ['space-between', Result.START], |
| ['stretch', Result.START], |
| ['center', Result.CENTER], |
| ['unsafe center', Result.CENTER], |
| ['safe center', Result.CENTER], |
| ['space-around', Result.CENTER], |
| ['space-evenly', Result.CENTER], |
| ['end', Result.END], |
| ['unsafe end', Result.END], |
| ['safe end', Result.END], |
| ['flex-end', Result.END] |
| ]; |
| |
| for (let d of data) { |
| for (let c of ['none', 'size']) { |
| test(() => { |
| container.style.alignContent = d[0]; |
| container.style.contain = c; |
| const children = container.querySelectorAll('div'); |
| assert_equals(children[0].offsetTop, d[1]); |
| assert_equals(children[1].offsetTop, d[1] + LINE_HEIGHT); |
| assert_equals(children[2].offsetTop, d[1] + LINE_HEIGHT * 2); |
| }, `align-content: ${d[0]}` + (c == 'none' ? `` : `; contain: ${c}`)); |
| } |
| } |
| </script> |