CSS行高line-height解释 - 天地人物事

xingkongly 2021-11-04 原文


CSS行高line-height解释

“行高”顾名思意指一行文字的高度。具体来说是指两行文字间基线之间的距离。基线实在英文字母中用到的一个概念,我们刚学英语的时使用的那个英语本子每行有四条线,其中底部第二条线就是基线,是a,c,z,x等字母的底边线。下图的红色线即为基线。
英语本子的各条线

vertical-align中有top,middle,baseline,bottom与之是由关联的

css中起高度作用的应该就是height以及line-height了吧!

如果一个标签没有定义height属性(包括百分比高度)

 

 

1、单行文字的垂直居中对齐
网上都是这么说的,把line-height值设置为height一样大小的值可以实现单行文字的垂直居中。这句话确实是正确的,但其实也是有问题的。问题在于height,看我的表述:“把line-height设置为您需要的box的大小可以实现单行文字的垂直居中”,差别在于我把height去掉了,这个height是多余的

 

2、多行文字的垂直居中
要实现高度不固定的文字垂直居中使用margin/padding就好了。对于高度固定的div,里面文字单行或多行显示,字体大小有大有小的情况怎么办呢?方法之一就是借助于line-height。

 

line-height、font-size、vertical-align是设置行内元素布局的关键属性。

line-height 与 font-size 的计算值之差(在 CSS 中成为“行间距”)分为两半,分别加到一个文本行内容的顶部和底部。可以包含这些内容的最小框就是行框。

 

 

行内框

  内容区加上行间距等于行内框。如果一个行内非替换元素的font-size为15px,line-height为21px,则相差6px。用户代理将这6像素一分为二,将其一半分别应用到内容区的顶部和底部,这就得到了行内框

number 设置数字,此数字会与当前的字体尺寸相乘来设置行间距。
length 设置固定的行间距。
% 基于当前字体尺寸的百分比行间距。
 
 <style>
        * {
            margin: 0;
            padding: 0;
        }
        .parent {
            height: 100px;
            background: green;
            font-size:16px;
           
        }
        .parent1{
            line-height: 150%;
        }
        .parent2{
      
        }
        .parent3{
            line-height: 1.5;
        }

        .child {
            width: 400px;
            background: red;
            font-size: 30px;
            color:#fff;
        }
    </style>
</head>

<body>
    <div class="parent parent1">
      <div class="child">
          Web前端开发<br/>
          line-height:150%;行高有问题
      </div>
    </div>
    <div class="parent parent2">
      <div class="child">
          Web前端开发<br/>
          正常文字
      </div>
    </div>

    <div class="parent parent3">
      <div class="child">
          Web前端开发<br/>
          line-height:1.5;行高没问题
      </div>
    </div>


</body>

</html>

  

发表于
2017-09-16 11:40 
天地人物事 
阅读(179
评论(0
编辑 
收藏 
举报

 

版权声明:本文为xingkongly原创文章,遵循 CC 4.0 BY-SA 版权协议,转载请附上原文出处链接和本声明。
本文链接:https://www.cnblogs.com/xingkongly/p/7530666.html

CSS行高line-height解释 - 天地人物事的更多相关文章

  1. 推荐 | 九本不容错过的深度学习和神经网络书籍 – Eufisky

    推荐 | 九本不容错过的深度学习和神经网络书籍     针对 30 多本深度学习和神经网络书籍,我们(AI O […]...

  2. 编程语言分类 – tryone

    编程语言分类 1. 机器语言(直接操作硬件):直接使用二进制指令去编写程序    优点:计算机无障碍理解,运行 […]...

  3. ajax-1:基本实现原理 – 谷子多多

    ajax-1:基本实现原理 一.什么是Ajax? Asynchronous JavaScript and XM […]...

  4. jdk Android SDK下载安装及配置教程 – 清风软件测试

    jdk Android SDK下载安装及配置教程 2018-05-30 22:46  清风软件测试  阅读(1 […]...

  5. 【重温设计模式】创建型-单例模式,工厂模式,建造者模式,原型模式 – 无信不立

    View Post 【重温设计模式】创建型-单例模式,工厂模式,建造者模式,原型模式 一、创建型设计模式 单例 […]...

  6. 阿里巴巴编码规范(Java)证明 – 编程一生

    阿里巴巴编码规范(Java)证明 背景 阿里云上有个阿里巴巴编码规范认证,我估算一下时间成本很低,多个认证也没 […]...

  7. mysql 多表查询 – 手中烟

    mysql 多表查询   三张表,需要得到的数据是标红色部分的。sql如下: select a.uid,a.u […]...

  8. 从哪些方面扩展你的系统 – 系统性能扩展立方体

    在上一篇文章《分布式系统的构建原则》中总结了分布式系统的几个原则,扩展性是其中非常重要的一个原则,而对于扩展性 […]...

随机推荐

  1. 十一:HTML之实现基本网页结构

      网页大框架:头部、主体、页脚   一:头部,一般包含logo、导航、banner   二:主体内容,视实际 […]...

  2. 【分享】2017 开源中国新增开源项目排行榜 TOP 100

    2017 年开源中国社区新增开源项目排行榜 TOP 100 新鲜出炉! 这份榜单根据 2017 年开源中国社区 […]...

  3. 几个不错的firefox浏览器插件

    现在习惯了用firefox,于是介绍几个我必装的插件  附加组件     1 AutoProxy 非常好用的代 […]...

  4. 数据结构4——浅谈DancingLinks的思想及应用

    在学习DancingLinks之前,我们先来回顾一下我们以前学过的回溯法。 我们学习基础的回溯法的时候,我们都 […]...

  5. Python 图像处理 OpenCV (3):图像属性、图像感兴趣 ROI 区域及通道处理

    前文传送门: 「Python 图像处理 OpenCV (1):入门」 「Python 图像处理 OpenCV […]...

  6. 开源方案搭建可离线的精美矢量切片地图服务-1.开篇(附成果演示地址)

    系列文章目录 开源方案搭建可离线的精美矢量切片地图服务-1.开篇(附成果演示地址) 开源方案搭建可离线的精美矢 […]...

  7. windows防火墙添加规则

    #include <windows.h> #include <crtdbg.h> #i […]...

  8. 手把手教你建github技术博客

    适合人群 喜欢写Blog的人 有一定的编程基础 爱折腾的人 熟练使用版本控制Git 了解使用Github 熟悉 […]...

展开目录

目录导航