JSFiddle - React, Tailwind, and code Playground
by tonytlwu
HTML
<span class='aspect'></span><br />
<span class='result'></span>
JavaScript
var cw = 790;
var ch = 370;
var iw = 100;
var ih = 200;
// Get container aspect ratio
var a = cw / ch;
// Calculate the final width and height based on longest dimension
if (a >= 1) {
var fw = iw;
var fh = iw / a;
if(fh > ih) {
fh = ih;
fw = ih * a;
}
} else {
var fw = ih * a;
var fh = ih;
if(fw > iw) {
fw = iw;
fh = iw / a;
}
}
$('.aspect').append(a+' : 1');
$('.result').append(Math.round(fw) + ' × ' + Math.round(fh));