HTML邮件中Montserrat字体无法加载的问题咨询
解决邮件中Montserrat字体无法加载的问题
邮件客户端对外部<link>引入字体的支持非常有限,这就是你本地预览正常但发送后字体失效的核心原因,以下是可行的解决方法:
1. 内嵌@font-face(最可靠方案)
把Montserrat字体转换成Base64编码,直接内嵌到邮件的<style>标签中,绕过外部资源加载限制:
- 从Google Fonts下载你需要的Montserrat字重(比如400、700)的woff2格式文件
- 将woff2文件转为Base64编码(可使用在线转换工具或本地命令行完成)
- 在邮件头部的
<style>里添加@font-face规则:
<!DOCTYPE html> <html lang="en"> <head> <meta charset="UTF-8" /> <meta name="viewport" content="width=device-width, initial-scale=1.0" /> <style> @font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 400; src: url(data:font/woff2;base64,[替换为你的Montserrat 400字重Base64编码]) format('woff2'); font-display: swap; } @font-face { font-family: 'Montserrat'; font-style: normal; font-weight: 700; src: url(data:font/woff2;base64,[替换为你的Montserrat 700字重Base64编码]) format('woff2'); font-display: swap; } </style> <title>Document</title> </head> <body> <table align="center" border="0" cellpadding="0" cellspacing="0" style="margin:0 auto; max-width:600px; padding-top:40px; width:100%; background:black; font-family:'Montserrat', sans-serif; font-size:14px;" > .... </table> </body> </html>
2. 优化字体栈提升兼容体验
即使做了内嵌,仍有部分老客户端(比如Windows版Outlook)不支持@font-face,这类客户端只会加载本地已安装的字体。你可以优化字体栈,让备用字体更贴近Montserrat的风格:
font-family: 'Montserrat', -apple-system, BlinkMacSystemFont, 'Segoe UI', Roboto, Helvetica, Arial, sans-serif;
3. 关键兼容性说明
- Apple Mail、iOS Mail、Gmail网页版、Outlook网页版对内嵌
@font-face支持良好 - Windows版Outlook仅支持本地安装的字体,无法强制加载外部字体,只能通过字体栈优化体验
内容的提问来源于stack exchange,提问作者marocena26
相关产品推荐
相关产品推荐

