A LITTLE HELP. A LOT DONE.
Good tools.
Great flow.

Your shortcut to the everyday. Create, convert, calculate,
and get back to what you love.

✓ Free to use✓ No sign-up✓ 500+ possibilities
Developer

Aspect Ratio Helper

Convert width and height pairs into modern aspect-ratio CSS plus legacy padding hacks.

Loading interactive tool…

About this tool

Maintaining consistent width-to-height ratios across images, videos, and embed containers used to require a padding-bottom percentage hack — a brittle workaround that confused every developer who encountered it. The modern CSS aspect-ratio property replaces this entirely with a single, readable declaration. The Aspect Ratio Helper provides presets for the most common ratios in digital media — 16:9 for video, 4:3 for presentation, 1:1 for square, 9:16 for vertical reels, and 21:9 for cinematic banners — plus a custom ratio input for any width/height pair. Set the element's width constraint, preview the resulting box, and copy the one-line CSS declaration. Includes the legacy padding-hack fallback for browsers that predate aspect-ratio support.

Why use it

  • Modern Property: aspect-ratio replaces the padding-bottom percentage hack with a single readable declaration that sets width-to-height relationship directly. No more wrapper divs, no more dividing dimensions to find a percentage — the browser handles the geometry automatically.

  • Common Ratios: Presets for 16:9 (widescreen video), 4:3 (classic presentation), 1:1 (square photo and card), 9:16 (vertical mobile short), and 21:9 (cinematic ultrawide hero banner) cover the overwhelming majority of media and layout use cases in modern web design.

  • Custom Values: Enter any integer pair for unusual media ratios or branded design specifications. The helper calculates the exact CSS value and preview instantly, handling non-standard ratios like 3:2 for photography or 5:4 for legacy monitor formats.

  • Fallback Hint: Toggle the legacy fallback to see the equivalent padding-top percentage value and wrapper structure for browsers that do not support aspect-ratio. The fallback is increasingly unnecessary but remains relevant for embedded widgets in old intranet or email contexts.

  • Live Preview: A box renders in the playground at your chosen ratio, resizing as you adjust the width constraint. This makes it immediately obvious whether a 9:16 box at 400px max-width is appropriate for your layout context before you paste the CSS into production.

  • Copy CSS: The output is a one-line declaration: aspect-ratio: 16 / 9 (or your chosen ratio) plus the width constraint you set. The slash syntax is readable and explicit — no calculated decimals that obscure the intended ratio.

How to use

  1. Select a preset ratio from the buttons: 16:9, 4:3, 1:1, 9:16, or 21:9
  2. Or enter a custom ratio by typing the width and height numbers into the custom input
  3. Set a width or max-width constraint for the element in the size field
  4. Toggle the fallback switch if you need a padding-hack fallback for older browsers
  5. Preview the rendered box at the chosen ratio and verify proportions
  6. Click Copy CSS to grab the aspect-ratio declaration (and optional fallback)

When it helps

  • When embedding a YouTube or Vimeo player that must maintain 16:9 across all screen widths
  • When building a square product image grid where cards must stay equal-width and equal-height
  • When creating a vertical short-form video component at the 9:16 ratio for a reels section
  • When designing a cinematic hero banner at 21:9 for a film or game promotional page
  • When ensuring a map embed maintains its proportions regardless of the container width
  • When building a responsive image placeholder that preserves layout space before the image loads

Examples

16:9 video embed

Input
Ratio: 16/9, width: 100%
Expected result
.video { aspect-ratio: 16 / 9; width: 100%; }

Square card

Input
Ratio: 1/1
Expected result
.card { aspect-ratio: 1 / 1; }

Vertical reel 9:16

Input
Ratio: 9/16, max-width: 400px, width: 100%
Expected result
.reel { aspect-ratio: 9 / 16; max-width: 400px; width: 100%; }

Tips

  • Set width: 100% on the element alongside aspect-ratio to make a fully responsive box that scales to its container while maintaining proportions
  • Combine aspect-ratio with object-fit: cover on images so they fill the defined ratio by cropping rather than distorting or leaving blank space
  • 9:16 is the standard for mobile-first vertical video — use it for TikTok-style embeds, stories, and reel components in your layout
  • 21:9 cinematic ratio works well for hero banners because it is wide enough to display immersive imagery while remaining shallow enough to leave viewport space for content below
  • For older browser support (pre-2021 Safari), use aspect-ratio as enhancement and test with the padding-bottom fallback; but for most modern web projects, aspect-ratio alone is sufficient

Frequently Asked Questions

What is the CSS aspect-ratio property?
aspect-ratio sets a preferred width-to-height ratio for an element. The browser maintains this ratio as the element's size changes. If you set width: 100% and aspect-ratio: 16 / 9, the element height adjusts automatically to maintain the ratio at any width.
How is aspect-ratio different from the padding-bottom hack?
The padding-bottom hack exploits the fact that padding percentages are calculated from element width, using a wrapper div with no height and padding-top/bottom equal to height/width*100%. aspect-ratio is a direct property that communicates intent clearly and does not require extra markup.
Which browsers support aspect-ratio?
aspect-ratio is supported in Chrome 88+, Firefox 89+, Safari 15+, and Edge 88+. Global support exceeds 95%. The only remaining use case for the padding-bottom fallback is very old browsers in embedded or intranet contexts with specific legacy browser requirements.
What ratio should I use for YouTube embeds?
Use 16 / 9. YouTube videos are mastered at 16:9 and the iframe embed fills its container at this ratio. Setting aspect-ratio: 16 / 9 with width: 100% on the iframe ensures it scales correctly without fixed pixel height values that break at different viewport widths.
How do I keep aspect-ratio with object-fit images?
Set aspect-ratio on the img or figure container and add object-fit: cover on the img element. aspect-ratio constrains the container's proportions; object-fit: cover scales the image to fill the container without distortion, cropping excess content from the edges.
Does aspect-ratio work without explicit width or height?
aspect-ratio establishes a ratio between width and height. If neither is constrained by the layout, the element defaults to its intrinsic or content-driven size. Typically, you set width: 100% or a max-width and let aspect-ratio calculate the height from the ratio.
Can aspect-ratio be animated?
aspect-ratio is listed as an animatable property in the CSS specification and interpolates between ratio values in modern browsers. Animating from aspect-ratio: 1 to aspect-ratio: 16 / 9 creates a shape-change transition, though this is an uncommon pattern in production UI.
Why does my element ignore aspect-ratio?
aspect-ratio is overridden by an explicit height that constrains the element independently. If both width and height are set to fixed values, aspect-ratio has no effect. Remove the explicit height and let the ratio determine it, or use min-height: 0 to release the constraint.

Explore the category

Glossary

Aspect Ratio
The proportional relationship between an element's width and height, expressed as width / height. The CSS aspect-ratio property enforces this relationship automatically when only one dimension is constrained.
Intrinsic Size
The natural width and height of a replaced element (like an image or video) determined by its content rather than CSS rules. aspect-ratio interacts with intrinsic size to resolve final dimensions.
Padding Hack
A legacy technique for maintaining aspect ratios by setting padding-top or padding-bottom to a percentage of width on a zero-height element, exploiting CSS's percentage-padding calculation from parent width.
Object Fit
A CSS property for replaced elements (img, video) that controls how content fills its container. object-fit: cover scales to fill, cropping excess; object-fit: contain scales to fit, leaving empty space.
Responsive Media
Media elements — images, videos, iframes — that scale fluidly with their containers rather than using fixed pixel dimensions. Achieved by combining width: 100%, max-width, and aspect-ratio.
Cinemascope
An ultrawide aspect ratio of approximately 21:9 or 2.39:1 originally from film production. Used in web design for cinematic hero banners and immersive full-width background video.