首页 > 解决方案 > 如何为数字设置相同的行高

问题描述

我正在使用谷歌字体 - Alegreya,数字是航海的。有没有办法把它们放在一条线上?

干杯!

标签: csstypography

解决方案


排版中有两种(据我所知)类型的数字。

Alegreya使用“旧式人物”,其设计目的是在最合适的情况下流畅地上升和下降到基线以下。在某些字体的上下文中,旧样式的图形很漂亮并且提高了可读性。

你要找的东西叫做“衬里人物”,它们排列整齐,就像站在基线上的士兵一样得名。

如果您确实想“更正”这一点,则必须为要重新定位的每个数字手动执行此操作(或创建一个以编程方式执行此操作的函数)。

如果您确实想建立自己的私人地狱,CSS3 有一个功能可以让您这样做。查看基线移位:http ://www.cssportal.com/css-properties/baseline-shift.php

.theNumberSixSpan{
   baseline-shift:-0.3em;
}
.theNumberSevenSpan{
   baseline-shift:0.4em;
}

你能想象每个数字都是这样吗?特别是,因为它不必要地违反了至少 500 年的印刷知识。

旧式数字只有在您尝试将它们表示为独立数字(即不与其他长副本文本对齐)时才会成为真正的设计问题。我猜这就是你正在做的事情。这很好:这意味着您可以为这些块选择第二种字体,它既可以补充您的设计,又可以使用衬里图形。

根据文本的性质,您可以选择将旧样式的图形保留在长副本中,或者以编程方式将其切换到第二种字体的衬里图形。

希望这些信息对您有所帮助。如果还有什么我们可以添加的,请在评论中告诉我们。


推荐阅读