- A+
所属分类:Web前端
目录
line-height属性是很常用的css属性,可以用它来设置文字的行高,但是不允许使用负值。
line-height属性的可用属性值
1.line-height: normal
默认值。文字会默认有一个合理的行间距。
2.line-height: number
属性值可以是一个数字,该数字与字体尺寸即font-size的值相乘作为行高。
示例
<body> <p>这里是一句用于测试的文字。</p> <style> body,p{ margin: 0; padding: 0; } p{ font-size: 16px; line-height: 2; } </style> </body>
图1-可以看见最终p元素的行高为32px
3.line-height: length
可以设置一个具体固定的值(包含数值和单位)作为行高。
示例
<style> body,p{ margin: 0; padding: 0; } p{ font-size: 16px; line-height: 28px; } </style>
图2-可以直接设置具体的行高
4.line-height: x%
可以设置基于当前字体尺寸的百分比作为行高,具体使用可看示例。
示例
<style> body,p{ margin: 0; padding: 0; } p{ font-size: 20px; line-height: 90%; } </style>
图3-可以看出文字的行高等于font-size属性的值乘以90%
<style> body,p{ margin: 0; padding: 0; } p{ font-size: 20px; line-height: 110%; } </style>
图4-再次测试,结果同图3
5.line-height: inherit
从父元素继承该属性,当父元素的该属性值是一个缩放比例时,子元素将继承该缩放比例而不是具体的数值。
注意: IE浏览器不支持该属性值。
示例
<body> <div> 这是父元素内的文字内容。 <p>这是子元素内的文字内容。</p> </div> <style> body,div,p{ margin: 0; padding: 0; } div{ font-size: 16px; line-height: 2; } p{ font-size: 20px; line-height: inherit; } </style> </body>
图5-子元素的行高是子元素font-size属性值和从父元素上继承的line-height属性值相乘得出的计算结果
图6-整个div的高度是父元素行高(16px*2=32px)加上子元素行高得出的计算结果,等于72px
应用场景
单行文字上下居中
想要让单行文字上下居中显示,只需设置元素的line-height属性值和height属性相等即可。
示例
<body> <p>这里是一句用于测试的文字。</p> <style> body,p{ margin: 0; padding: 0; } p{ background-color: #999999; font-size: 16px; height: 50px; } </style> </body>
图7-未设置line-height时文字的显示情况
<body> <p>这里是一句用于测试的文字。</p> <style> body,p{ margin: 0; padding: 0; } p{ background-color: #999999; font-size: 16px; height: 50px; line-height: 50px; } </style> </body>
图8-设置line-height等于height后文字的显示情况
写在最后
以上为全部内容,感谢阅读。
本博文仅为学习记录和分享交流,如有错漏,还请帮忙指出,也欢迎更多补充,不胜感激。
GitHub地址:https://github.com/ljxlijiaxin.