首页 > 代码库 > line-height和font位置不同显示效果不同
line-height和font位置不同显示效果不同
今天在写demo的时候,使用line-height跟height相等的方式实现垂直居中,但是没有出现相应的效果,还以为又是一个line-height的bug,查找后才知道是自己当时学艺不精……下面详细介绍:
font缩写的内容有font-style || font-varient || font-weight || font-size/line-height || font-family
第一次看到font-size/line-height的时候还以为是font-size或者line-height,当时还疑问如果两者同时存在的话会怎样?但是接着没有查找,所以,问题一定在开始的时候解决。又说废话了……上边描述的错误的原因是我的line-height样式在font缩写样式的前边,而font缩写中的将前边中的覆盖掉了,所以才没有垂直居中。而font-size/line-height中的斜线只是为了说明font-size后边的那个值是line-height;
下边详细介绍line-height:
这个表格中的内容是w3c中规定line-height的取值
normal | 默认。设置合理的行间距。 |
number | 设置数字,此数字会与当前的字体尺寸相乘来设置行间距。 |
length | 设置固定的行间距。 |
% | 基于当前字体尺寸的百分比行间距。 |
inherit | 规定应该从父元素继承 line-height 属性的值。 |
这里边最主要的区别是number跟length或者%的区别,normal默认是固定的number:1.2;左右,不同的浏览器解析不同。
取值为number的line-height,得到的值子元素可以继承,但是各个子元素的具体值是与当前字体的尺寸相乘得到的。
而length或者%子元素直接继承父元素计算后的大小忽略自己的font-size。也就是当font-size发生变化的时候,line-height不会发生变化。
在应用时,段落p中使用number会多一点,但是标题一般可以使用length或者%。
下边的网址是一个牛人对于line-height的详解,附有图片,大家可以参考一下;
http://www.cnblogs.com/fengzheng126/archive/2012/05/18/2507632.html
line-height和font位置不同显示效果不同