フォントは相対。アクセシビリティを考慮するのであれば、それはある意味『鉄則』だと思います。とはいうもののOperaやMozillaを使えばたとえ「font-size: 12px」のように絶対値(この例ではピクセル)を使って定義してあってもシッカリ拡大/縮小してくれます。それに対して Windows版IE は絶対値の拡大/縮小がサポートされていません。シェアの多い IE を無視してまで絶対値は使えない・・・というのが相対を勧める一般的な理由だと思います。
しかし、絶対値でも拡大する方法があるみたいです。IEにはIEでしか動作しない独自のCSS属性がありますが、その中にZoomというのがあります。これは文字通りサイトをズームしてくれる機能で、絶対値で設定した文字でも関係なく拡大してくれます。これのユニークなところは文字だけでなく画像やスクロールバーまで拡大してしまうところでしょうか。
書き方は簡単。スタイルシートの一番最初に以下のコードを記述します。
* {zoom: 1.0;}単位はパーセントでもOKで、1.0とはつまり100%のこと・・・つまり、通常サイズといったところでしょうか。この値を2.0にすればレイアウト全体が2倍表示されます。このzoom属性の数値をマニュアルなりJavaScriptなどで変えてあげることでレイアウトを拡大させることが可能になります。
サクッとBookmarkletが作りたい方は以下のコードをコピペ。こちらは使用したら全体が200%になります。
javascript:(function(){document.body.style.zoom="200%";}())またはBookmarklet Blogさんが作ったZoom表示Bookmarkletを使えばお好みの倍率で拡大することが出来ます。
もちろん、これはW3Cの標準規格でもありませんしIEの独自規格ということで、激しくオススメ!というわけではありません。どちらかというと相対値を使うのが無難だといったらその通りだと思います。しかし、IEにある隠れたアクセシビリティ機能という意味では非常に興味深いですし、zoom属性を加えたことによって他のブラウザに支障が起こるというわけでもないので予備知識として知っておくのも良いかもしれませんね。
ピクセルは文字サイズが固定されてしまうことからコンピュータ的な絶対値という表現をされることがありますが、厳密にはピクセルも相対値の一種ですよー。
絶対値 mm(ミリ),cm(センチ),in(インチ),pt(ポイント),pc(1pc=15px)
相対値 em(大文字のMの高さ),ex(小文字のxの高さ),px(ピクセル),%(パーセント)
> ピクセルは文字サイズが固定されてしまう
> とからコンピュータ的な絶対値という表現を
> されることがありますが、厳密にはピクセル
> も相対値の一種ですよー。
なるほどー。知りませんでした。ご指摘のほうありがとうございました。
Good Point. Anyways, this was where i met her. You can join for free as well www.redtricircle.com