HTML 邮件不是缩小版网页。客户端会删除样式、改写链接、代理图片,设备又会改变字体与可用宽度。因此,可靠的验收对象应当是“真实发送后的邮件”,而不是编辑器预览。

一、先固定测试基线

开始改模板前,先记录模板版本、发送环境、收件地址、发送时间和预期变量。每次只改变一组因素,例如只调整容器宽度,或只替换按钮结构。否则即使结果改善,也无法判断是哪项修改生效。

建议至少准备一个桌面客户端和一台 390px 左右的移动设备。若团队服务多个市场,还要加入最长语言样本、长邮箱、长订单号以及变量为空的样本。把这些样本保存在事务邮件实验台中,避免每次临时拼装。

最小证据集

模板版本、触发时间、收件时间、客户端、屏幕宽度、主题、From、截图和原始信头。没有这些信息,兼容性问题很难复现。

收件人最先看到的是发件人名称、主题和预览文字。主题应说明动作,例如“确认新设备登录”,而不是只写“重要通知”。From 名称要与用户刚刚完成的动作一致,Reply-To 则应指向有人处理的地址,或明确说明不可回复。

预览文字需要补充主题,而不是复读主题。还要检查较长主题在移动端截断后,关键动作是否仍然可辨。验证码、金额或订单状态不宜只依赖预览文字,因为部分客户端不会稳定展示它。

三、检查布局与响应式行为

桌面邮件主体应保持稳定的可读宽度;移动端则要允许单列自然收缩。优先使用邮件客户端兼容度更高的表格结构和内联关键样式,不要依赖网页项目里的 Grid、复杂定位或外部样式表。

  • 在 390px 宽度下确认没有横向滚动,长链接与订单号可以换行。
  • 确认标题、段落、列表和按钮间距形成稳定节奏,不因系统字体替换而挤压。
  • 移除背景图后再次阅读,关键信息不能只存在于图片或背景色里。
  • 放大到 200% 检查正文与操作是否仍可理解,按钮不应相互覆盖。

四、图片、按钮与动态内容要分别验证

关闭图片后,品牌装饰可以消失,但验证码、价格、日期和操作说明不能消失。信息型图片要有有意义的替代文字;纯装饰图片应使用空替代文本,避免读屏重复。

按钮要检查三个层面:文案是否说明动作、视觉按钮是否有足够触控面积、链接目标和参数是否正确。不要只点击设计工具中的预览按钮,应从收到的成品邮件里打开链接,确认重定向、登录态与失效路径。

动态变量尤其需要边界样本。姓名过长、订单列表为空、日期跨时区、货币位数变化,都可能破坏原本整齐的布局。为每类事务邮件保存一组正常值、一组长值和一组空值,会比上线后逐封救火更省时间。

五、无障碍与纯文本回退不是附加项

正文需要足够的前景与背景对比,链接不能只靠颜色辨认,阅读顺序应与视觉顺序一致。标题层级要帮助读屏用户理解内容,而不是为了字号随意跳级。动图若承载关键动作,首帧也必须表达完整信息。

纯文本版本应保留主题对应的上下文、验证码、有效期和完整链接。它不是把 HTML 标签全部剥掉后的残渣。发送前可先用 HTML 邮件测试清单逐项勾选,再比较 HTML 与纯文本是否传达同一个动作。

六、用真实发送完成发布验收

最后一步是从实际业务系统触发邮件,而不是从模板编辑器点“发送测试”。只有真实链路才能覆盖变量注入、队列、签名、链接改写和实际 From。复制一个独立测试地址,记录触发时间,并在邮件到达后同时核对信头与正文。

如果邮件没有按预期到达,不要立刻连续重发。先查看发送服务状态和地址拼写,再参考验证码邮件延迟排查顺序判断是等待、换地址还是重新触发。完成修正后要发送新的完整样本,不要用旧截图代替复验。

Final pass

把模板发进独立测试收件箱

核对真实信头、HTML 正文与移动端阅读,再决定是否发布。

打开测试收件箱