line-height
line-height CSS 属性用于设置多行元素的空间量,如多行文本的间距。对于块级元素,它指定元素行盒(line boxes)的最小高度。对于非替代的 inline 元素,它用于计算行盒(line box)的高度。
示例
/* keyword value */ line-height: normal; /* unitless values: use this number multiplied by the element's font size */ line-height: 3.5; /* <length> values */ line-height: 3em; /* <percentage> values */ line-height: 34%; /* global values */ line-height: inherit; line-height: initial; line-height: unset;
浏览器支持
|
|
|
|
|
浏览器都支持
line-height
|
||||
语法:
line-height :normal | <length> | <percentage> | <number>
取值
-
normal
取决于用户端。桌面浏览器(包括Firefox)使用默认值,约为
1.2,这取决于元素的font-family。 -
<number>
该属性的应用值是这个无单位数字
<number>
乘以该元素的字体大小。计算值与指定值相同。大多数情况下,这是设置
line-height的 推荐方法 ,不会在继承时产生不确定的结果。 -
<length>
指定
<number>用于计算 line box 的高度。参考<number>了解可使用的单位。以 em 为单位的值可能会产生不确定的结果。 - <percentage> 与元素自身的字体大小有关。计算值是给定的百分比值乘以元素计算出的字体大小。 百分比 值可能会带来不确定的结果。
-
-moz-block-height将行高设置为当前块的内容区域高度。
说明:
检索或设置对象的行高。即字体最底端与字体内部顶端之间的距离。
- 对应的脚本特性为 lineHeight 。
line-height
CSS属性用于设置多行元素的空间量,如多行文本的间距。
对于块级元素,它指定元素行盒(line boxes)的最小高度。对于非替代的 inline 元素,它用于计算行盒(line box)的高度。
| 默认值 | normal |
| 适用于 | 所有元素 |
| 继承性 | 有 |
| 动画性 | 当值为 <length> | <number>时 |
| 计算值 | 指定值 |
实例
/* 理论上,以下所有规则拥有相同的行高 */
div { line-height: 1.2; font-size: 10pt; }
/* 无单位数值 number/unitless */
div { line-height: 1.2em; font-size: 10pt; }
/* 长度 length */
div { line-height: 120%; font-size: 10pt; }
/* 百分比 percentage */
div { font: 10pt/1.2 georgia,"bitstream charter",serif; } /* font 简写属性 font shorthand */
为了简便,可以通过
font
简写来设置
line-height
,但这要求在使用该简写属性时同时设置
font-family
属性。
推荐在设置 line-height 时使用无单位数值
这个示例说明了为什么给
line-height
赋值时使用
<number>
值比使用
<length>
更好。我们会到用两个
<div>
元素。第一个
div
为绿色边框,使用无单位的
line-height
值。第二个
div
带红色边框,使用
em
定义
line-height
的值。
//CSS
.green {
line-height: 1.1;
border: solid limegreen;
}
.red {
line-height: 1.1em;
border: solid red;
}
h1 {
font-size: 30px;
}
.box {
width: 18em;
display: inline-block;
vertical-align: top;
font-size: 15px;
}
//html
<div class="box green">
<h1>avoid unexpected results by using unitless line-height.</h1>
length and percentage line-heights have poor inheritance behavior ...
</div>
<div class="box red">
<h1>avoid unexpected results by using unitless line-height.</h1>
length and percentage line-heights have poor inheritance behavior ...
</div>
<!-- the first <h1> line-height is calculated from its own font-size (30px × 1.1) = 33px -->
<!-- the second <h1> line-height results from the red div's font-size (15px × 1.1) = 16.5px, probably not what you want -->
无障碍方面
主段落内容的
line-height
至少应为
1.5
。这将有助于改善低可视条件下的体验,也对认知阻碍者,如阅读困难者,有帮助。如果文字的大小要随页面的缩放而变化,请使用无单位的值,以确保行高也会等比例缩放。