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

发送Outlook自动化邮件时字体大小异常变动问题求助

问题原因
  • 行内样式缺少单位:你代码里的font-size:13没有指定单位,Outlook采用Word内核渲染HTML邮件,对无单位的字体大小解析规则和普通浏览器不同,会优先匹配Outlook客户端默认的字体大小设置(多数默认配置为11号字),导致你设置的大小失效。
  • 样式覆盖范围不完整:仅对开头的<p>标签设置样式,后续换行的文本、signature变量对应的签名内容如果游离在样式标签外,或者<p>标签未正常闭合,Outlook自动补全HTML结构时会给这部分内容套用默认样式。
  • 缺少全局样式约束:没有定义HTML全局样式,Outlook自动修正不规范HTML结构时会插入自带的默认样式规则,覆盖你写的局部行内样式。
修复方案
  1. 给所有字体大小属性补全pt单位,Outlook对pt(印刷点)的兼容性远高于px等单位,比如你要设置10号字就写font-size:10pt。
  2. 把所有邮件内容包裹在带统一样式的全局容器内,避免出现无样式的游离文本。
  3. 可选:在HTML头部添加全局样式规则,锁定所有常见文本标签的字体格式,避免Outlook默认样式覆盖。

修正后的代码示例

With OutlookMailitem
    .To = toEmail
    .CC = ccEmail & ";" & ccEmail2 & ";" & ccEmail3
    .Subject = "Submit your Timesheet"
    ' 增加完整HTML结构、全局样式、补全单位
    .HTMLbody = "<html><head><style>* {font-family: arial; font-size: 10pt; margin: 0; padding: 0;}</style></head><body>" & _
    "<p>Hey " & toName & ",</p><br><br>" & _
    "<p>We noticed your timesheet is still open. Please submit your timesheet each Monday before 12PM. If you face any issues, do let us know.</p><br><br>" & _
    "<p>Best,</p>" & signature & "</body></html>"
    .Send
End With

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.25 03:54:04