2011-07-14

CSSでline-heightには単位を指定しない

複数行にわたる文章にサイズの異なる文字が混在する場合、ブラウザの設定で文字サイズを変更すると文字が重なってしまうことがある。こうした場合は、line-heightのプロパティの値の指定に原因がある可能性が高い。
{line-height: 1.5em;} や {line-height: 20px;} のように単位付きで値を指定するとときと、{line-height: 1.5;} のように単位なしで値を指定するときとでは、子孫要素への継承のされ方が異なる。単位なしの場合は子孫要素で高さが再計算されるのに対して、単位ありの場合は子孫要素にも同じ値が適用される。通常は、単位なしでline-heightの値を指定することで問題を解決できる。

例1:これはline-heightを1.2に指定した場合:
font-sizeを大きくしても文字が重ならないはず
コードはこちら:

例2:これはline-heightを1.2emに指定した場合:
font-sizeを大きくすると文字が重なってしまうはず
コードはこちら:

0 件のコメント: