最近在做CSS界面时经常遇到line-height和height这两个属性,一直没搞很明白,今天静下心来好好网上查阅了一下,算是有所领悟。https://blog.csdn.net/a2013126370/article/details/82786681这个博主写的很不错,至少让我对line-height和height的理解更深刻了,值得借鉴。
一、一些基本概念
1.行高是指文本行基线间的垂直距离。
2.行距是上行的底线和下一行顶线之间的距离。
我个人理解,可以得出以下结论:
1. 在没有设置div的height属性时,div的高度是根据line-height的大小而变化,并不受font-size的影响。
2. height是用来设置元素的高度,比如img的高度、div的高度等。line-height 属性是用来设置行间的距离(行高),两者并不是同一个概念。
二、代码实例
<!DOCTYPE html><html> ???<head> ???????<meta charset="utf-8"> ???????<title>sdds</title> ???????<style> ???????????html,body,div{ ???????????????margin: 0; ???????????????padding: 0; ???????????????border: 0; ???????????} ???????????.bg0{ ???????????????width: 200px; ???????????????height: 45px; ???????????????line-height: 100px; ???????????????background-color: red; ???????????????font-size: 10px; ???????????????word-wrap:break-word; ???????????} ???????????.bg1{ ???????????????width: 200px; ???????????????height: 10px; ???????????????background-color: green; ???????????} ???????????.bg2{ ???????????????width: 200px; ???????????????height: 45px; ???????????????background-color: yellow; ???????????} ???????????.bg3{ ???????????????width: 200px; ???????????????height: 55px; ???????????????background-color: blue; ???????????} ???????</style> ???</head><body> ???<div class="bg0">上海大学SHU(Shanghai University)是一所211大学</div> ???<div class="bg1"></div> ???<div class="bg2"></div> ???<div class="bg3"></div></body></html>
运行结果:
结论:可以看出,黄色背景div和蓝色背景div的height加起来就是类名为bg0的div的所设置的line-height=100px,而第一部分红色div设置的height=45px,是line-height减去fontsize后在除以2得到的,即(100-10)/2=45px。
CSS——对height和line-height的理解
原文地址:https://www.cnblogs.com/FHC1994/p/10112653.html