私はビューポートユニットを発見したばかりなので、実際に使用したいと思います。アスペクト比を保持するビューポート単位?
最初のチャレンジ:私の要素のサイズは760x670ピクセルです。ビューポート単位を使用して、高さが100vh
、または幅が100vw
のいずれか小さい方になるようにスケールアップします。
残念ながら、私は100vmin
を使用して2つのうちの小さい方を得ることはできますが、両方を適用するのではなく、幅または高さにしか適用できません。
現在、私は使用しています:
#root {
width: 760px;
height: 670px;
width: 100vw;
height: calc(670vw/760);
}
これは、垂直方向のスクロールで、その結果、画面に合わせて幅を拡大縮小します。これはあまりにも悪いことではありませんが、実際にビューポートに合わせることができればそれを好むでしょう。
Chromeでテスト中です。 'vw'は' calc'の内部では使用できないようです。私は 'height:-webkit-calc(100vw/3)'のようなものを試しました。 'calc'とビューポートの両方のユニットをサポートする唯一の他のブラウザはIE10とSafari 6で、いずれも私のプラットフォーム(Windows 7)にはインストールできません。 –
Btw、これはメディアクエリで可能です。アスペクト比に基づいてコードを分岐することができます。 '@media allと(最小アスペクト比:760/670){...}'。 –
[WebKitのバグ](https://bugs.webkit.org/show_bug.cgi?id=94158)です。 Chrome/Safariは忘れてしまいます。 Firefox/Operaはビューポートユニットを実装していません。 IE10はあなたのコードを理解する唯一のブラウザだと思われます。 ':)' –