我希望将 HTML 中的一个字符与它旁边的字符的顶部对齐。css vertical-align 属性似乎是我想要的,但我遇到了一些麻烦。
使用vertical-align: text-top
似乎没有做我想要的,但我认为应该从阅读规范中得到。
目前,我使用vertical-align: 10%
的是一个合理的解决方案,除了我必须在每个平台上计算正确的数字以使其看起来正确。浏览器检测将值设置为我认为可能正确的值似乎是错误的解决方案。
我希望将 HTML 中的一个字符与它旁边的字符的顶部对齐。css vertical-align 属性似乎是我想要的,但我遇到了一些麻烦。
使用vertical-align: text-top
似乎没有做我想要的,但我认为应该从阅读规范中得到。
目前,我使用vertical-align: 10%
的是一个合理的解决方案,除了我必须在每个平台上计算正确的数字以使其看起来正确。浏览器检测将值设置为我认为可能正确的值似乎是错误的解决方案。
试试<sup>
标签。这意味着你正在尝试做的事情。实现它之后,你可以使用 css 对其进行更多控制。
示例:M<sup>c</sup>Phe
产生 M c Phe
http://www.w3schools.com/TAGS/tag_sup.asp
如果“c”太小,就做<style> sup { font-size: 9pt } </style>
或类似的事情。
其中一些想法在正确的轨道上,但没有一个完全奏效。我最终将 Josh Stdola 的使用text-transform: uppercase;
建议与 Keltex 的建议结合使用,即使用较小字体的大写字母来使用伪小型大写字母,即使使用表格是不必要的。
它仍然依赖于字体大小和行高,但我至少可以通过这种方式获得更一致的效果。
使用的建议<sup>
并不是很有帮助,因为无论如何我都必须覆盖它的所有样式,所以它与<span>
. 语义上可能存在差异,但足够小以至于无关紧要。
安东尼对这个问题的评论给了我一个想法,用语义正确的<sup>
标签包装“c”(或者我猜你可以继续使用 a <span>
),然后text-transform: uppercase;
在上面使用 CSS。
丑陋,但你可以使用表格单元格。
首先定义一些样式:
.bigletter
{
font-size:20px;
line-height:20px;
}
.upletter
{
font-size:14px;
line-height:14px;
vertical-align:top;
}
.downletter
{
font-size:14px;
line-height:14px;
vertical-align:bottom;
}
然后是html:
<tr>
<td class='bigletter'>M</td>
<td class='upletter'>C</td>
<td class='bigletter'>P</td>
<td class='downletter'>hexxx</td>
</tr>