关于CSS:line-height

栏目: CSS · 发布时间: 7年前

内容简介:先上结论:元素的高度是由什么决定对于我们解决页面显示问题和布局页面都有很大的帮助。 常规的操作表现是为一个块级元素设置height属性,则其拥有了高度:上述代码表现为:

先上结论:

  • 如果为块级元素设置height则其拥有高度
  • 如果没有为块级元素设置height元素中有文字且为该元素设置line-height则其拥有高度
  • 在第二种情况下文字的水平中线与块级元素的line-height中线是同一条(同一高度)

正文

元素的高度是由什么决定对于我们解决页面显示问题和布局页面都有很大的帮助。 常规的操作表现是为一个块级元素设置height属性,则其拥有了高度:

<style>
  .test {
    border: 1px solid #ccc;
    height: 100px;
    width: 100px;
  }
</style>
<body>
  <div class="test"></div>
</body>
复制代码

上述代码表现为:

但是根据熟知,当我们不为元素设置height,而元素中有内容时,该元素依然获取到了高度:

<style>
  .test {
    border: 1px solid #ccc;
    width: 100px;
  }
</style>
<body>
  <div class="test">1</div>
</body>
复制代码

直观表现为:

关于CSS:line-height

为什么div获取到了高度,并不是由于文字撑起了高度,而是line-height撑起了div,比较一下两端代码

.test {
    border: 1px solid #ccc;
    width: 100px;
    line-height: 100px;
  }
</style>
<body>
  <div class="test">1</div>
</body>
复制代码
关于CSS:line-height
.test {
    border: 1px solid #ccc;
    width: 100px;
    line-height: 0;
  }
</style>
<body>
  <div class="test">1</div>
</body>
复制代码
关于CSS:line-height
显而易见的结果就是因为有了height所以有高度,没有height则因为有了line-height而有了高度 更多详细的细节其实是因为 每一行文字 都有一个line boxes, 这些一个个盒子自然撑起了父元素的高度

同时,观察上面的例子就能发现文字的中线和line-height的中线是在相同位置的,所以才有了常用的那套居中办法:

<style>
  .test {
    line-height: 100px;
    height: 100px;
  }
</style>
复制代码

这里再强调一点,以前说

设置line-height和height相同数值则可以使得其中文字垂直居中

从结果来看确实如此,但是这句话不对,这句话多余了几个字,完全不需要设置height,只需要line-height就可以做到文字垂直居中了。 至此,前言三条结论都在本文中做出了解释和观察。

结尾

这篇文章其实是为了 使用原生HTML+JS+CSS实现折线图 做准备的 会是一系列的文章,全部文章内容均为参考张鑫旭博客内容 本篇对应的博客地址为:张鑫旭博客地址


以上所述就是小编给大家介绍的《关于CSS:line-height》,希望对大家有所帮助,如果大家有任何疑问请给我留言,小编会及时回复大家的。在此也非常感谢大家对 码农网 的支持!

查看所有标签

猜你喜欢:

本站部分资源来源于网络,本站转载出于传递更多信息之目的,版权归原作者或者来源机构所有,如转载稿涉及版权问题,请联系我们

中国创投简史

中国创投简史

投资界网站 / 人民邮电出版社 / 2017-1-1 / 55

《中国创投简史》系统梳理了自20世纪80年代开始的中国创投产业发展历程,回顾了各个时代中的代表人物、知名投资机构以及他们所创下的一个个投资奇迹。从熊晓鸽、徐新、沈南鹏等风险投资人的成长经历中,从搜狐、腾讯、百度、小米等一代代科技企业巨头的诞生与演变过程中,我们可以看到风险投资的力量、创业者的企业家精神以及科技创造伟大财富的神奇过程。 对于风险投资和私募股权行业的从业者以及有融资需求的创业者来......一起来看看 《中国创投简史》 这本书的介绍吧!

HTML 编码/解码
HTML 编码/解码

HTML 编码/解码

Markdown 在线编辑器
Markdown 在线编辑器

Markdown 在线编辑器

正则表达式在线测试
正则表达式在线测试

正则表达式在线测试