| <!DOCTYPE html> |
| <title>CSS aspect-ratio: img inline size with box-sizing</title> |
| <link rel="author" title="Mozilla" href="https://www.mozilla.org/"> |
| <link rel="help" href="https://drafts.csswg.org/css-sizing-4/#aspect-ratio"> |
| <link rel="match" href="../../reference/ref-filled-green-100px-square.xht" /> |
| <style> |
| img { |
| border-top: 40px solid green; |
| } |
| </style> |
| |
| <p>Test passes if there is a filled green square and <strong>no red</strong>.</p> |
| |
| <!-- |
| 1st: A green rect 60x100. |
| border-top is 60x40 and the content box is 60x60. |
| We use 'aspect-ratio: auto && <ratio>', so the aspect-ratio works with |
| content-box dimensions always. The block size of the content box is |
| (100px - 40px) = 60px, so the inline size is 60px * 1/1 = 60px. |
| (note: height here is the block size of border-box.) |
| |
| 2nd: A green rect 20x100. |
| border-top is 20x40 and the content box is 20x60. |
| (note: height here is the block size of content-box.) |
| |
| 3rd: A green rect 10x100. |
| border-top is 10x40 and the content box is 10x60 because we compute |
| the inline size by aspect-ratio which works with border-box and so the |
| inline size is 100px / 10 = 10px. |
| (note: height here is the block size of border-box.) |
| |
| 4th: A green rect 10x100. |
| border-top is 10x40 and the content box is 10x60 to add up to 10x100. |
| --> |
| <img src="support/1x1-green.png" style="height: 100px; aspect-ratio: auto 1/10; box-sizing: border-box;" |
| ><img src="support/1x1-green.png" style="height: 60px; aspect-ratio: 1/3; box-sizing: content-box;" |
| ><img src="support/1x1-green.png" style="height: 100px; aspect-ratio: 1/10; box-sizing: border-box;" |
| ><img src="support/1x1-green.png" style="width: 10px; aspect-ratio: 1/6; box-sizing: content-box;"> |