元素的高度是由什么决定对于我们解决页面显示问题和布局页面都有很大的帮助。 常规的操作表现是为一个块级元素设置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详解(代码实例)-LMLPHP

为什么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详解(代码实例)-LMLPHP

.test {
    border: 1px solid #ccc;
    width: 100px;
    line-height: 0;
  }
</style>
<body>
  <div class="test">1</div>
</body>
登录后复制

显而易见的结果就是因为有了height所以有高度,没有height则因为有了line-height而有了高度 更多详细的细节其实是因为 每一行文字 都有一个line boxes, 这些一个个盒子自然撑起了父元素的高度。

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

<style>
  .test {
    line-height: 100px;
    height: 100px;
  }
</style>
登录后复制

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

从结果来看确实如此,但是这句话不对,这句话多余了几个字,完全不需要设置height,只需要line-height就可以做到文字垂直居中了。


以上就是CSS中line-height详解(代码实例)的详细内容,更多请关注Work网其它相关文章!

09-12 07:32