<div class="box"></div>
<div class="box"></div>
<div class="box"></div>
body {
	min-height: 100vh;
	margin: 0;
	padding: 24px;
	gap: 24px;
	box-sizing: border-box;
	display: grid;
	grid-template-columns: repeat(3, 1fr);
	align-items: center;
}

.box {
	position: relative;
	padding-bottom: calc((var(--aspect-y, 9) / var(--aspect-x, 16)) * 100%);
	background: #4169e1;
}

.box::after {
	position: absolute;
	top: 0;
	right: 0;
	bottom: 0;
	left: 0;
	display: flex;
	justify-content: center;
	align-items: center;
	white-space: nowrap;
	font: 24px Consolas, monospace;
	color: #ffffff;
 	counter-reset: aspect-x var(--aspect-x) aspect-y var(--aspect-y);
	content: counter(aspect-x) ' × ' counter(aspect-y);
	overflow: hidden;
}

.box:nth-child(1) {
	--aspect-x: 16;
	--aspect-y: 9;
}

.box:nth-child(2) {
	--aspect-x: 16;
	--aspect-y: 10;
}

.box:nth-child(3) {
	--aspect-x: 4;
	--aspect-y: 3;
}

External CSS

This Pen doesn't use any external CSS resources.

External JavaScript

This Pen doesn't use any external JavaScript resources.