Appendix B : CSS の長さの単位

 CSS では,長さを指定する属性がたくさんある。そのための単位もいくつかあり,場合によって使い分けられる。

物理的な長さ

 これらは,実世界に存在する長さの単位である。指定された長さは,システム固有の割合で拡大,縮小され画面に表示される。たとえば,同じ解像度だったら,モニタが大きい方が大きく表示されるだろう。また,高解像度の方が小さく表示されるだろう。

 まず,身近なものとしてはセンチメートル(記号:cm)とミリメートル(記号:mm)がある。言うまでもないが,1[cm]=10[mm],すなわち 1[mm]=0.1[cm] である。

 ヤード・ポンド法の単位としてはインチ(記号:in)がある。換算値は 1[in]=2.54[cm]=25.4[mm] である。

 次は,あまり日常では使わない,印刷の分野の単位である。

 ポイント(記号:pt)は活字の大きさを表す単位である。CSS においては,1[pt]=1/72[in] で,逆に言えば,72[pt]=1[in]である。アルファベットなどは上下にすき間があるものが多いので,やや小さく見える傾向がある。

 伝統的には,1[pt]=1/72.26[in] であるが,CSS では,PostScript と同じく 1[pt]=1/72[in] と定義されている。

 パイカ(記号:pc)はポイントと併せて印刷で使われる単位で,1[pc]=12[pt] である。おもにページ周囲のマージンや,レイアウトに使われる。

 物理的に決まっている長さを指定することはイメージ的にもわかりやすいといえるが,それが出力されるメディアが確定されていないときにはあまり有用とはいえない。とりわけ HTML では,ブラウザの設定により長さが変化する部分も多く,また,印刷されるということもある。たとえば,画面上で見やすいからとフォントサイズを 14pt に設定したのはよかったが,印刷したら文字が大きすぎて困った,ということが起こりうる。

相対的な長さ

 相対的な長さはそのときのフォントサイズをもとにして決められる。

 エム(記号:em)は文字の高さを表す(ただし,印刷の分野では文字“M”の幅である)。ごくおおざっぱな発想では,1[em]=1[文字] ととらえてよいだろう。一般に和文の活字は正方形のものが主流なので,“文字の高さ=文字の幅”という発想がじゅうぶんになりたつ(ただし,厳密には正しくない)。日常的な感覚(原稿用紙的発想)では大いに納得がいくので,“幅が異なるものもありうる”ことに注意して,“1[em]=1[文字]”と思っていただいて差し支えなかろう。ただし,欧文では事情が異なってくる。

 font-size 属性は,1em の長さを定める属性と考えることができる。ただし,font-size 属性の値として em を単位とした指定を行った場合には,それまでのフォントサイズに対する“倍率”となる。

同じフォントサイズでも,フォントの種類によって 1ex の長さは異なる。
図 B.1 [D]

 エックスハイト(記号:ex)は文字“x”の高さを表す。欧文において,“h”のように上に出ていない,かつ,“y” のように下にも出ていない文字の高さということになる。これは,和文ではあまりなじみのないものであろう。

 1ex の表す長さがフォントサイズに影響されることはもちろんであるが,そのときのフォントの種類も重要な要因となる。すなわち,同じフォントサイズでも,フォントの種類によって文字“x”の高さは異なっている。

ピクセル

 ごく大ざっぱに言えば,コンピュータの画面上の“点の数”を使って長さを表す単位がピクセル(単位:px)である。

 この単位はまったくシステム依存になる。ほかの単位との関係も一意には決まっていない。たとえば,1px が何ポイントにあたるかというのはシステムの設定による。また,出力先が画面でない場合(たとえば,プリンタ),必ずしもプリンタの描ける“最小の点”でもって 1px を表すわけではない。

 この単位は,GIF ファイルなどのピクセルを単位として大きさが決まっているものに対して有用である。

 また,長さを指定するすべての場合において,“0”には単位はつけなくてもよい。


 CSS の長さの単位をまとめておく。

CSS の長さの単位
単位単位記号備考
物理長 cmセンチメートル。
mmミリメートル。1[mm]=0.1[cm]。
inインチ。1[in]=2.54[cm]=25.4[mm]。
ptポイント。1[pt]=1/72[in]。
pcパイカ。1[pc]=12[pt]。
相対長 emエム。文字の高さ。その時点でのフォントサイズ。
exエックスハイト。文字“x”の高さ。
- pxピクセル。画面上の点の数。