• 首页
  • vue
  • TypeScript
  • JavaScript
  • scss
  • css3
  • html5
  • php
  • MySQL
  • redis
  • jQuery
  • 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;
    

    浏览器支持

    IE浏览器火狐浏览器opera浏览器chrome浏览器safari浏览器
    浏览器都支持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-heightCSS属性用于设置多行元素的空间量,如多行文本的间距。对于块级元素,它指定元素行盒(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。这将有助于改善低可视条件下的体验,也对认知阻碍者,如阅读困难者,有帮助。如果文字的大小要随页面的缩放而变化,请使用无单位的值,以确保行高也会等比例缩放。

    上篇:letter-spacing

    下篇:text-size-adjust