垂直对齐文本mac和PC

时间:2012-06-22 09:13:51

标签: css fonts

我试图将一些符号垂直居中放在一个盒子里面。但我不能让符号在OSX和windows中垂直对齐

这是我为证明这个问题而做的一个非常简单的例子 http://dabblet.com/gist/2971548

您会注意到x在窗口中垂直居中,但在OS X上没有。 如何解决这个问题?

1 个答案:

答案 0 :(得分:6)

您在Mac OS X与Windows中看到的区别是因为正在使用两种不同的字体,并且这些特定符号相对于基线处于不同的高度。垂直居中以字体为中心,而不仅仅是字符串中的字符。

您的CSS字体堆栈指定“Helvetica Neue,Helvetica,Arial,sans-serif”。在Mac OS X下,将使用Helvetica Neue。在Windows下,Helvetica Neue不会(通常)出现,甚至也不是简单的Helvetica,所以Arial几乎肯定会被使用。很可能你会在其他没有这些字体的平台上得到不同的结果。

以下链接图形显示叠加的两种字体的符号,设置为公共基线。 Helvetica Neue是红色的; Arial是绿色的。你可以清楚地看到Helvetica Neue中的符号比Arial中的符号要低得多:

comparison of plus signs

comparison of multiplcation signs

这里最好的解决方法是使用@ font-face字体来确保在两个(所有)平台上使用完全相同的字体。有许多免费和商业服务提供字体数据来执行此操作。我会留给您搜索并确定最适合您特定应用的内容。