【发布时间】:2021-10-20 05:51:37
【问题描述】:
我有一堆使用 MJML 编写的电子邮件。输出的 HTML 似乎是正确的。
作为电子邮件发件人,我使用的是 AWS SES。但是在发送之后,我在一封电子邮件中的所有 CSS 样式都被破坏了。要发送电子邮件,我使用方法ses.sendEmail。
我曾尝试使用在 HTML 头部和内联样式中注入的 CSS。不工作。
它可能有什么问题?谢谢!
【问题讨论】:
标签: node.js amazon-ses mjml
我有一堆使用 MJML 编写的电子邮件。输出的 HTML 似乎是正确的。
作为电子邮件发件人,我使用的是 AWS SES。但是在发送之后,我在一封电子邮件中的所有 CSS 样式都被破坏了。要发送电子邮件,我使用方法ses.sendEmail。
我曾尝试使用在 HTML 头部和内联样式中注入的 CSS。不工作。
它可能有什么问题?谢谢!
【问题讨论】:
标签: node.js amazon-ses mjml
首先,检查您的 HTML。通过以下任一免费站点发送:https://www.putsmail.com(需要免费的 Litmus 帐户;他们是知名且信誉良好的电子邮件服务提供商,ESP)或 https://useparcel.com/(电子邮件 HTML 编辑器;将您的 HTML 放入编辑器中,然后使用他们的免费发送功能)。使用 putsmail,不要接受他们为你内联 CSS 的提议——那会改变你的 HTML。
当每封电子邮件到达时,将收到的 HTML 与您发送的 HTML 进行比较。差异工具很有帮助。
我刚刚通过其中的每一个发送了一个 1300 多行的 HTML 文件。对于两者,每个字符都没有变化,除了</html> 之后的空白行。我没关系!
将渲染与您在其中一种 MJML 渲染工具(可能是 https://mjml.io/try-it-live 或 MJML 桌面应用程序 https://mjmlio.github.io/mjml-app/)中看到的进行比较。不要依赖任何一个电子邮件客户端中的呈现作为 HTML 的完全代表;他们中的大多数人都有怪癖。 (我在看着你,除了 Apple 的所有 Outlook!还有 GMail。还有 Yahoo!。更多信息请访问 https://caniemail.com/。)
我对 AWS ses.sendmail 做了一些研究。这两个方面都有重要的建议和信息。
https://docs.aws.amazon.com/ses/latest/DeveloperGuide/send-email-sendmail.html
https://docs.aws.amazon.com/ses/latest/APIReference/API_SendEmail.html
我发现不到一年前的一张 SO 票可能是相关的。 AWS Amplify SES sendmail AccessDenied
建议您查看所有内容。也许那里的某些东西会改善您的体验。
最后,来自电子邮件 HTML 世界的一些标准建议。如果你让sendmail 工作,也许它不适用。
使用不会更改您的 HTML 的 ESP 发送您的 HTML。对于发送大量电子邮件的人来说,使用 ESP 有很多很好的理由。许多提供有价值的服务。出于同样的原因,一些 ESP 在发送之前会更改 HTML;我们很多人都避开它们。
希望你能明白。正如您所体验的那样,电子邮件 HTML 绝非易事。
【讨论】: