| <!DOCTYPE html> |
| <meta charset="utf-8"> |
| <title>CSS Text Test: min-content sizing and white-space: break-spaces</title> |
| <link rel="author" title="Florian Rivoal" href="https://florian.rivoal.net/"> |
| <link rel="help" href="https://drafts.csswg.org/css-text-3/#propdef-white-space"> |
| <link rel="help" href="https://drafts.csswg.org/css-text-3/#white-space-phase-2"> |
| <meta name="flags" content=""> |
| <link rel="match" href="reference/white-space-intrinsic-size-001-ref.html"> |
| <meta name="assert" content="When white-space is break-spaces, preserved spaces at the end of the line do affect the intrinsic min-content size. Overflow-wrap makes no difference."> |
| <link rel="stylesheet" type="text/css" href="/fonts/ahem.css" /> |
| <style> |
| aside { |
| float: left; |
| white-space: break-spaces; |
| background: green; |
| } |
| aside:last-of-type { overflow-wrap: break-word; } |
| div { |
| font-family: Ahem; |
| color: transparent; |
| font-size: 50px; |
| width: 0ch; |
| } |
| |
| #red { |
| position: absolute; |
| background: red; |
| width: auto; |
| z-index: -1; |
| } |
| </style> |
| |
| <p>Test passes if there is a green rectangle below and no red. |
| <div id=red>XS<br>S<br>XS<br>S</div> |
| <div> |
| <aside>X </aside> |
| <aside>X </aside> |
| </div> |
| <!-- Note: the space immediately following the X does not get wrapped, |
| even under break-spaces+break-word: |
| The parent of the flow is 0-width, |
| so the float is min-content sized, |
| which should leave enough room for both the X and one space. |
| break-space+break-word would allow for an emergency wrap before the space |
| if the float itself was sized too small, |
| but it isn't. |
| --> |