说一说line-height_html/css_WEB-ITnose

php中文网
发布: 2016-06-24 11:20:12
原创
1566人浏览过

line-height这个样式相信大家一定不会陌生,我们经常用它来让文本上下居中,这样做一般不出出现什么问题,但是如果对这个属性不是很熟悉的话,可能会踩到一些坑,今天亲自去试验了一下,并总结了一下line-height的几个特性。

首先line-height有以下几种标准的写法:

写法1、line-height:normal;     //等价于写法5,固定值为数字1.2

写法2、line-height:inherit;    //父元素继承,(默认继承父元素行高)

写法3、line-height:24px;      //通过像素px或者em等单位赋值

立即学习前端免费学习笔记(深入)”;

写法4、line-height:150%;    //line-height=font-size*1.5

写法5、line-height:1.5;      //line-height=font-size*1.5

 

吐槽大师
吐槽大师

吐槽大师(Roast Master) - 终极 AI 吐槽生成器,适用于 Instagram,Facebook,Twitter,Threads 和 Linkedin

吐槽大师 94
查看详情 吐槽大师

首先看一下写法3可能存在什么问题,如图:

    

可以看出,父元素设置行高,而子元素如果没有设置行高,那么子元素会采用父元素设置的line-height,不管子元素的font-size多大,都不会改变行高,所以当子元素font-size>父元素line-height的时候,会出现字体重叠或者其它不想看到的样式。

 

其次写法4和5看起来虽然一样,却有不同之处,如下图:

          

 

上面两种写法都会得到同样的效果,如图:

现在把子元素字体增大一倍

通过百分比设置的行高,line-height = 200%*父元素 font-size = 32px,子元素行高不会发生变化,导致字体重叠

 

通过数字设置的行高,子元素的行高会重新计算,line-height=父元素行高比例因子*子元素font-size=2*64=128px;子元素行高会重新计算

到这总结有以下几点

  line-height具有继承性(inherited)。

  元素设置了line-height等于像素值px或者em时,那么他的子元素(没有设置行高的子元素)会采用父元素的line-height,并且不会因为字体大小而改变本身的行高。

  line-height会根据父元素设置的方式,确定自身行高是否重新计算。即写法4和5的区别

相信到这里你已经对line-height有一定的了解了

 

HTML速学教程(入门课程)
HTML速学教程(入门课程)

HTML怎么学习?HTML怎么入门?HTML在哪学?HTML怎么学才快?不用担心,这里为大家提供了HTML速学教程(入门课程),有需要的小伙伴保存下载就能学习啦!

下载
来源:php中文网
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系admin@php.cn
最新问题
开源免费商场系统广告
热门教程
更多>
最新下载
更多>
网站特效
网站源码
网站素材
前端模板
关于我们 免责申明 举报中心 意见反馈 讲师合作 广告合作 最新更新 English
php中文网:公益在线php培训,帮助PHP学习者快速成长!
关注服务号 技术交流群
PHP中文网订阅号
每天精选资源文章推送
PHP中文网APP
随时随地碎片化学习

Copyright 2014-2025 https://www.php.cn/ All Rights Reserved | php.cn | 湘ICP备2023035733号