为什么把line-height设置为容器div的高度就能使文字垂直居中?

 我来答
aAa9079
推荐于2017-11-25 · TA获得超过2289个赞
知道大有可为答主
回答量:1181
采纳率:100%
帮助的人:667万
展开全部
line-height呢,你可以理解为每行文字所占的高度。
比如说,有一行20px大小的文字,如果设置为line-height:50px,那就是说,这行文字的高度会占50px。
显然,每个字的大小只有20px,那怎么边呢?于是呢,浏览器就把多出来的30px(50px-20px)在这行文字的上面加上了15px,下面加上了15px。
这样的话,那文字就在这50px的空间内是居中的了(这个就是浏览器规定的,它就这个分配空间)。
这样的话,如果你的DIV是50px,那么巧了,正好这行文字也就相对于DIV居中了。
所以,这样一来呢,就有了“把line-height设置为容器div的高度就能使文字垂直居中”。
不知道这么说是不是回答了你的问题。
业葛菲5V
2013-06-03 · 超过18用户采纳过TA的回答
知道答主
回答量:50
采纳率:100%
帮助的人:40.3万
展开全部
<div style="background:red;font-size:12px;line-height:50px;">首先,不固定高度line-height也可以实现文字垂直居中</div>
        <div style="background:green;font-size:12px;line-height:30px;">当高度自适应时,文字的顶端和文字的底端的距离会随line-height大小变化而变化,但实际上文字还是垂直居中的(不考虑padding)</div>
        <div style="background:blue;font-size:12px;line-height:25px;height:25px">由于可能为了布局需要,要固定高度,为了实现单行文字垂直居中,从而设置line-height的值与height值设置一致</div>

已赞过 已踩过<
你对这个回答的评价是?
评论 收起
侠客视界
推荐于2016-08-19 · TA获得超过571个赞
知道小有建树答主
回答量:854
采纳率:90%
帮助的人:491万
展开全部
line-height 属性设置行间的距离(行高)。
注释:不允许使用负值。
说明
该属性会影响行框的布局。在应用到一个块级元素时,它定义了该元素中基线之间的最小距离而不是最大距离。
line-height 与 font-size 的计算值之差(在 CSS 中成为“行间距”)分为两半,分别加到一个文本行内容的顶部和底部。可以包含这些内容的最小框就是行框。
原始数字值指定了一个缩放因子,后代元素会继承这个缩放因子而不是计算值。
    默认值:   normal     
    继承性:   yes     
    版本:   CSS1     
    JavaScript 语法:   object.style.lineHeight="2"     
实例
设置以百分比计的行高:
p.small {line-height:90%}
p.big {line-height:200%}

浏览器支持
所有浏览器都支持 line-height 属性。
注释:任何的版本的 Internet Explorer (包括 IE8)都不支持属性值 "inherit"。
可能的值
值描述
normal    默认。设置合理的行间距。    
number    设置数字,此数字会与当前的字体尺寸相乘来设置行间距。    
length    设置固定的行间距。    
%    基于当前字体尺寸的百分比行间距。    
inherit    规定应该从父元素继承 line-height 属性的值。
本回答被提问者采纳
已赞过 已踩过<
你对这个回答的评价是?
评论 收起
收起 1条折叠回答
推荐律师服务: 若未解决您的问题,请您详细描述您的问题,通过百度律临进行免费专业咨询

为你推荐:

下载百度知道APP,抢鲜体验
使用百度知道APP,立即抢鲜体验。你的手机镜头里或许有别人想知道的答案。
扫描二维码下载
×

类别

我们会通过消息、邮箱等方式尽快将举报结果通知您。

说明

0/200

提交
取消

辅 助

模 式