You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

Gmail安卓应用邮件模板文本垂直对齐异常的排查与解决

邮件模板圆形首字母头像的Gmail安卓垂直对齐问题解决

需求与初始实现

需要在邮件模板中实现圆形背景的首字母头像,由于邮件模板无法使用JavaScript,仅通过纯CSS实现。初始代码如下:

<div style='width: 36px; height: 36px; display: inline-block; vertical-align: middle; background-color: #625fff; border-radius: 36px; line-height: 36px;'>
      <p style='width: 1ch; height: 36px; font-size: 18px; line-height: 36px; margin: 0px auto; word-break: break-all; overflow: hidden; letter-spacing: 18px; color: white; font-family: monospace, monospace; vertical-align: middle;'>John Doe</p>
</div>

该代码在多数环境下表现正常,但Gmail安卓应用中存在文本垂直对齐异常,且无法通过元素调试排查具体原因。

尝试的解决方案(均无效)

尝试移除display: inline-block和vertical-align: middle,改用display: table布局,问题未解决:

<div style='width: 36px; height: 36px; display: table; background-color: #625fff; border-radius: 36px;'>
      <div style='width: 1ch; height: 36px; font-size: 18px; line-height: 36px; margin: 0px auto; word-break: break-all; overflow: hidden; letter-spacing: 18px; color: white; font-family: monospace, monospace;'>Sadman Rizwan</div>
</div>

进一步排查发现,对齐异常源于文本行高与父容器高度的冲突——尽管两者均设置为36px,但Gmail安卓应用可能修改了行高或父容器实际尺寸。

最终有效解决方案

通过display: table-cell的vertical-align: middle属性替代line-height实现可靠的垂直对齐,最终代码如下:

<div style="width: 36px; height: 36px; border-radius: 36px; background-color: #625fff; text-align: center; display: table-cell; vertical-align: middle;">
      <div style="width: 1ch; overflow: hidden; white-space: nowrap; font-family: monospace, monospace; text-transform: uppercase; background-color: #625fff; color: white; font-size: 18px; line-height: normal; display: inline-block; vertical-align: middle;">John Doe</div>
</div>

内容的提问来源于stack exchange,提问作者Sadman Rizwan

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.02 22:46:15