<width> / <height>幅と高さをその順で書く
16 / 9は「幅16に対して高さ9」です。数値にpxなどの単位はつけません。
要素の幅と高さの比率を保つプロパティ。同じ幅のカードを、正方形・横長・縦長へ切り替えて比べます。
.element aspect-ratio: 16 / 9;
値のパターン
<width> / <height>16 / 9は「幅16に対して高さ9」です。数値にpxなどの単位はつけません。
auto初期値autoでは、画像など内在的な縦横比を持つ要素はその比率を使います。
height: auto両方のサイズを固定すると比率はサイズを変えません。この教材は幅だけを固定し、高さを自動計算します。
初期値はautoです。幅 / 高さの順で数値を書き、よく使う形を短い指定で保てます。
auto内在比率を優先初期値1 / 1正方形幅=高さ4 / 3標準的な横長カード16 / 9ワイドな横長動画3 / 4縦長ポートレート22 / 1と同じ比率高さは1動画が読み込まれる前から16 : 9の領域を取り、表示後のレイアウトのずれを抑えます。
.video { width: 100%; aspect-ratio: 16 / 9; }画像の元サイズが違っても枠の縦横比を揃え、object-fitで中身の収め方を決めます。
.thumbnail { aspect-ratio: 4 / 3; object-fit: cover; }親要素に合わせて幅が伸び縮みしても、高さを自動計算して正方形を保ちます。
.avatar { width: 100%; aspect-ratio: 1 / 1; }ポイント
aspect-ratioは望ましい比率をサイズ計算に使うプロパティです。widthとheightの少なくとも一方がautoのときに効果が表れます。内容の最小サイズなどほかの制約が優先される場合もあります。置換要素でないインラインボックスなどを除く要素に適用でき、子要素へは継承されません。
aspect-ratio と一緒に使われるプロパティや、詳しい外部リファレンスをまとめました。