line-height

作者: 白璞1024 | 来源:发表于2018-05-12 17:58 被阅读0次

[TOC]

壹、x

1、字母与基线

  1. Line-height 行高的定义就是两基线的间距
  2. vertical-align默认的值就是基线
  3. 字母x的下边线就是我们的基线

2、x-height 与ex

x-height就是小写字母x的高度,

在css世界中,vertical-align:middlemiddle就是只基线上1/2 x-height的高度,所以vertical-align:middle不是绝对的居中了,不同的字体,x的基线不一样,高度也不一样,所以只是看起来好像在中间一样

ex兼容性比较早,ie6就可以了,ex就是x-height的大小。

用法在副作用上,用来实现文字后的小图标居中对齐(不受字体和字号影响的内联元素的垂直居中对齐效果)

内联元素默认基线对齐,基线是x的底线 然后如果图标就是x的高度的话,看起来就好像居中对齐一样

<style>
        .point01 .icon_arrow{
            display: inline-block;
            width: 20px;
            height: 1ex;
            background: url(./img/arrow.png) no-repeat center
        }
    </style>
    <span class="point01 "> i am the testx<span class="icon_arrow"> </span></span>
image-20180509205350668.png

贰、 line-height

内联元素的高度不是由font-size元素决定的,而是由line-height撑开的,so非替换元素的纯内联元素的可视高度,完全line-height决定

  1. 一般来说,行距 = line-height - font-size

  2. 当我们的字体是宋体的时候,内容区域和em-box是等同的

  3. Line-height 小于 font-size的时候字会叠加到一起,行距为负值

  4. Line-height不可以影响替换元素的高度,如img,但是能改变替换元素相邻兄弟元素'幽灵空白节点'

  5. 如果行内元素和替换元素在一块,也就是图文模式的时候,line-height只能影响最小高度因为

    1. 替换元素高度不受line-height影响
    2. vertical-align背后的作用
  6. 单行文字居中,只要设置line-height就可以了,如果有高度的话,需要把line-height和高度设置的一样高就好了

  7. 行高控制文字居中,不仅适用于单行,多行也是可以的,line-height能够让单行或者是多行文字近似的垂直居中注意这的近似

     <style>
         /*--大的盒子用line-height--*/ 
            .point02 .box {
               line-height: 1024px;
            }
         /*小的盒子,让他先成为行内元素,然后居中显示就好了*/
            .point02 .content {
               display: inline-block;
               line-height: 20px;
               vertical-align: middle;
            }
        </style>
    

    因为内联元素都是基线对齐的,所以我们通过对.content设置vertical-align:middle来调整多行文本的垂直位置

  8. line-height的值可以是数字,px, em, 百分比,猛一看,line-height:150%; line-height:1.5 line-height:1.5em没有区别,实际上,line-height:1.5和另外两个有点区别,line-height:1.5所有子元素都是继承1.5,但是如果是百分比,或者是em子继承的是计算出来的那个px

    比如:

    • line-height:1.5;font-size : 20px;实际效果是line-height:30px;如果儿子的font-size : 30px; line-height的实际效果是45px;
    • Line-height:150%;font-size:20px; 实际效果 line-height:30px;如果儿子font-size:30px; line-height的值依然是30px;
  9. 如果line-height:150%;想要有line-height:1.5的效果使用方法:

    *{line-height:150%}
    /**因为通配符表示所有的元素,优先级大于继承来的css**/
    
  10. 推荐的line-height的值:

    1. 重内容展示的网页,比如博客,论坛之类的,一定用数值作为单位。
    2. 如果是偏重于布局结构精致的网站,长度数值都好
    3. 如果是数值,一般1.3 1.4 1.5都好,但是如果是长度值,20px推荐,因为计算方便
  11. 大值特性:

    <div class="box">
        <span></span>
    </div>
    

    上边的情况,无论 box spanline-height谁大谁小,box的高度由大的那个line-height决定

相关文章

  • line-height行高

    关于line-height line-height 语法: line-height : normal | <实数>...

  • 基础样式&隐藏元素

    line-height: 2和line-height: 200%有什么区别? 父元素设置line-height:2...

  • line-height和vertical-align

    line-height 在开发时,我们经常用到line-height,如设定height和line-height同...

  • HTML3

    line-height有什么作用? line-height是用于行高,另当line-height等于height时...

  • CSS line-height的理解

    真正的能理解CSS中的line-height,height与line-height line-height是基线到...

  • font-size(字号)& line-height(行高)

    line-height带有单位时,计算行高的结果为line-height高度,line-height规定的是行高最...

  • html3

    linge-height有什么作用? line-height:20px;line-height:2; (行...

  • line-height、background-clip、deg、

    line-height行与行之间的距离,不可以为负值; line-height:200%; background-...

  • 04day

    行间距line-height = font-size + 行间距.p{line-height:100% (相对于字...

  • HTML 学习笔记3

    1 . line-height 的作用 在没有设置标签的高度height时,line-height控制其表现高度...

网友评论

    本文标题:line-height

    本文链接:https://www.haomeiwen.com/subject/iwshdftx.html