CSS - 行高属性,它是如何工作的(简单)

Tru*_*ufa 7 html css alignment vertical-alignment

所以在这个简单的例子中我得到了最终结果:

替代文字

这是一个非常简单的问题,但我根本无法理解它.

为了实现我使用的数字的垂直居中:

line-height:100px;
Run Code Online (Sandbox Code Playgroud)

哪个工作得很好,并且一直在做试验和错误的基础.

我的问题是具体的原因,为什么line-height:50px;只是一半的方式得到.

如果它small div具有100px相对于它的高度和I的定位,则它的一半不应该将其中心定位到一半.

当我以div为中心时,这特别困扰我:

我会用:margin:50px 0 0 50px;得到这个:

替代文字


我意识到这个问题可能是一种矫枉过正,因为答案可能会(可能会非常简单),很抱歉!但我想这更好的是"为什么不这个工作"的问题;)

提前致谢!!

Jar*_*man 10

简单的答案是,对于行高,字符将位于行的垂直中间,因此高度为100px的行的文本位于中间,因此为50px.


Tru*_*ufa 9

好吧我很确定我现在得到了它,我会回答我自己的问题,多亏了你的答案,这将是一个更加图形化的解释(这总是对我有帮助):

替代文字

这只是jarret答案的补充(第一个指出它恕我直言)

感谢所有有用的答案

顺便说一句:抱歉可怕的艺术品.