我必须经历谷歌的每一页但尚未找到解决方案.我有一个自定义字体,我通过css font-face使用.该字体在底部添加了额外的填充,具体取决于我使用的浏览器和操作系统.下图显示了一个示例,其中mac位于左侧,窗口位于右侧.它在右边看起来是正确的(在
windows中),我希望它在mac上是相同的.
@font-face { font-family: universLight; src: url('http://www.viggi.com/fonts/UniversLTStd-Light.otf'); font-weight: normal; font-style: normal; } #button{ font-family: universLight; border: 1px solid black; background: #ccc; }
该代码位于http://jsfiddle.net/ZDh5h/
这是我已经知道的不会对我的研究有用.
> line-height在顶部和底部添加填充,以便底部的额外填充保持不变.
>使用不同的扩展名(如.otf或.ttf)也不起作用.只产生相同的结果
>更改字体大小也没有真正做任何事情
我在网站上经常使用这种字体,并不真的想为mac vs windows添加不同的CSS表格.如果有人知道无论如何修复这个没有javascript添加额外的填充我将非常感激.
谢谢.
解决方法
见
http://www.w3.org/TR/CSS2/visudet.html#propdef-line-height
normal
Tells user agents to set the used value to a “reasonable” value
based on the font of the element. The value has the same meaning as
. We recommend a used value for ‘normal’ between 1.0 to 1.2.
The computed value is ‘normal’.
我认为您观察到的行为来自浏览器中不同的“合理”值,因为正常情况下是默认的行高值.
因此,请指定您的值(比如line-height:1.5em;)以消除差异.