css でウィンドウ幅に対して色々設定したい
問題
css とかで画面幅の何割,みたいな長さの指定をしたい時がある.
解決
様々な方法があるがここにすごく単純な解がある:
vs,vwを使う.
“viewport width” の n% を示すのに n vw, height なら vh となる.vmin が幅と高さのうち小さい方の n%, vmax が大きい方.
height:80vh;
width:50vw;というふうに指定したデモを ここ に置いてみたから試して欲しい.
browser compatibilities
これは結構最近の機能ではあるらしいのだが,caniuse.com を見てみると大体のブラウザで対応は終了していそうだ.
手持ちの環境で試したのとを並べるとこんな感じになりそう: とりあえず vh と vw が見られてれば 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種を勝手にお勧めします.
- ScriptBrowserPlus
- iPad 上で “View Source” が出来る,知る限り唯一のブラウザ.タブレットの特性を活かしており操作性もきわめて良い.地味ながら最強ブラウザのひとつと勝手に思っている.
- Opera Coast
- Opera が提供する「タブレットのための」ブラウザ.最初戸惑うがカッコいい操作性,すっきりした UI など加点要素は多い.ただ所謂タブが明示的にはないなど,現状メインブラウザとして使うにはやや癖が強すぎる感があり,気分を変える二番手みたいな立ち位置か.