Files
30-seconds-of-code/snippets/constant-width-to-height-ratio.md
Angelos Chalaris d2c10f3e65 Deprecate browser support
Bump integration tools to 2.1.0
2020-04-29 13:47:57 +03:00

35 lines
888 B
Markdown

---
title: Constant width to height ratio
tags: layout,beginner
---
Given an element of variable width, it will ensure its `height` remains proportionate in a responsive fashion (i.e. its `width` to `height` ratio remains constant).
```html
<div class="constant-width-to-height-ratio"></div>
```
```css
.constant-width-to-height-ratio {
background: #333;
width: 50%;
}
.constant-width-to-height-ratio:before {
content: '';
padding-top: 100%;
float: left;
}
.constant-width-to-height-ratio:after {
content: '';
display: block;
clear: both;
}
```
#### Explanation
- `padding-top` on the `:before` pseudo-element causes the height of the element to equal a percentage of its width. `100%` therefore means the element's height will always be `100%` of the width, creating a responsive square.
- This method also allows content to be placed inside the element normally.