Xeebi

home categories feeds

css でウィンドウ幅に対して色々設定したい

問題

css とかで画面幅の何割,みたいな長さの指定をしたい時がある.

解決

様々な方法があるがここにすごく単純な解がある:

vs, vw を使う.

“viewport width” の n% を示すのに n vw, height なら vh となる.vmin が幅と高さのうち小さい方の n%, vmax が大きい方.

height:80vh;
width:50vw;

というふうに指定したデモを ここ に置いてみたから試して欲しい.

browser compatibilities

これは結構最近の機能ではあるらしいのだが,caniuse.com を見てみると大体のブラウザで対応は終了していそうだ.

手持ちの環境で試したのとを並べるとこんな感じになりそう: とりあえず vhvw が見られてれば OK ということにする. 全体に Ubuntu 12.04 での最新版です.

browser supported?
Firefox 30.0
Chromium 34.0.1847.116
Opera (latest)
Opera 12.16 (latest version for linux)
Konqueror 4.8.5
Midori 0.4.3

Opera の最新版は対応してるけど,Linux ようのがちょっと古いのは気を付けないといけないですね.

iPad のブラウザはこんな感じ.きょうの時点での最新版です

browser supported?
Safari
google chrome
Dolphin Browser
ScriptBrowser plus
Opera Coast
Opera Mini

Dolphin とか SBplus とかって自前でやってるのかどうか知らないけれど.

いずれ記事書くつもりでいたけどマイナっぽいブラウザ2種を勝手にお勧めします.