你如何改变下降线?

时间:2011-04-17 19:18:56

标签: css typography

我正在试图弄清楚如何移动一个文本块的下行线,移动所有的字母,如“y”和“g”,以显示在基线上方,但实际上不是基线。有没有办法不使用特殊字体?

3 个答案:

答案 0 :(得分:0)

我不是印刷专家,但我不认为你可以单独使用CSS控制基线,下降线和下降器的字母位置。

如果某些字体格式(和某些字体)支持此类内容,则即将发布的font-feature-settings property可能允许调整该格式。

答案 1 :(得分:0)

我也不是排版专家,正如@BoltClock建议的那样,除了最终通过font-feature-settings之外,这可能不会以任何通用方式实现。 CSS不提供这种精细的排版控制。

我想到的唯一(可怕的)解决方法是使用position: relative单独移动每个角色 - 它可能适用于标题,但可能不在任何其他环境中。

如果我理解正确,那就必须看起来像这样:

 span { font-size: 40px  }
 span.g  { position: relative; top: -6px; }
 span.y  { position: relative; top: -4px; }

 <span>Lorem <span class="y">y</span>psum Dolor Sit 
 <span class="g">g</span>amet</span>

JSFiddle

甚至可以编写一些jQuery来自动执行此操作。

答案 2 :(得分:0)

您需要使用带有百分比值的vertical-align样式和围绕这些特定字符的内联包装,以便相对于其他字符提升它们。我认为这将是最好的kludge。它使用相对高度更加语义。如果你没有时髦,不规则的下降器,你也可以尝试super