画面サイズを変更した際に、要素のアスペクト比を保持する方法をメモ。
サンプルコード
4:3の比率でリサイズに対応してみます。
HTML
<div class="aspect"> <div class="aspect-box"></div> </div>
CSS
.aspect { position: relative; width: 100%; padding-top: 75%; /* 4:3の場合 3 / 4 * 100 */ } .aspect-box { position: absolute; top: 0; left: 0; width: 100%; height: 100%; background: red; }
比率に応じて.aspectのpadding-topの値を変更します。
アスペクト比を保持するデモページ
コメントが承認されるまで時間がかかります。