2012-05-26 5 views
14

ユニットなしで行の高さを指定する際に、不具合(ブラウザ/デバイスの矛盾...)がありますか?単位なしのラインハイトへの欠点?

例:

body { 

    line-height: 1.5; 
} 
+0

単位で何を意味するのですか – Rab

+0

彼はpxまたはemを意味します – Ana

+0

私はそれが動作しないと思う、私はブラウザが認識できないことを意味します。 – Sam

答えて

26

ほとんどの場合、それは無単位の行の高さを使用するように、実際に良いでしょう -

もちろん、例外があります。最初に気になるのは、と知られているブロック要素がある場合です。heightの1行のテキストがにあり、そのテキスト行を垂直方向に中央に配置したい場合は、その方法が最も簡単ですblock要素のheightに等しいline-heightを使用することです。


[念のため、単位のないline-heightとの契約だかわかりません誰のため。]

あなたはfont-size: 14pxを持つ要素があるとします。継承されているかどうかに関係なく、設定された場所は関係ありません。自分で設定した場合でも、ユーザーエージェントのスタイルシートからのものでも構いません。要素はfont-size: 14pxです。

さて、あなたが設定されている場合、のは、同じ要素のline-height: 1.5を言わせて、これは1.5 * 14px 21px =としてピクセルに変換されます。したがって、計算されたline-height21pxになります。

+0

ありがとうございましたAna、しかし私が尋ねるのは、宣言されたユニットなしで行の高さを使用する際のアクセシビリティの問題があるかどうかです。 – zigzag

+0

私が知る限り、アクセシビリティ上の理由から、1.3と1.6の間の無単位線高さを使用することをお勧めします。 – Ana

+3

+1と、単位のないラインハイトがうまくいく別の投票。 WCAG 2.0のテクニック:[C21:CSSの行間隔の指定](http://www.w3.org/TR/WCAG20-TECHS/C21.html)では、1.5 - 2.0を推奨しています。 – steveax