HTML Gmail 不显示背景颜色?

Edw*_*ast 2 css gmail html-email

我在 PHP 程序中嵌入了 CSS,用于显示表格的背景颜色。

<style>
table {
    width:100%;
}
table, th, td {
    border: 1px solid black;
    border-collapse: collapse;
}
th, td {
    padding: 5px;
    text-align: left;
}
table#t01 tr:nth-child(even) {
    background-color: #eeeeee;
}
table#t01 tr:nth-child(odd) {
   background-color:#ffffff;
}
table#t01 th    {
    background-color: black;
    color: white;
}
</style>
Run Code Online (Sandbox Code Playgroud)

我有这个:

<TABLE id="t01">
Run Code Online (Sandbox Code Playgroud)

我获取了这个 PHP 程序的原始输出,将其保存为 .html 文件,将其上传到服务器,它的行为符合我的预期。但是当作为 HTML gmail 时,它根本不显示背景颜色。

如果我在 HTML 中添加 bgcolor="black" 即可。所以我知道一定可以在 html gmail 中设置背景颜色,但显然我在这里做不到。

PHP 程序生成表格,我真的想让 CSS 处理行的奇数/偶数颜色。

对此有什么优雅的编程解决方案?谢谢!

Gor*_*ton 5

Gmail 完全剥离了 head 和 body 标签,并且只识别 style 标签中的某些元素样式。

您将需要内联样式。为了解决这个问题,我将以编程方式构建您的电子邮件,然后通过内联程序运行它。 这是来自 Mailchimp 的一个很好的例子

这应该可以解决您的问题,但您可能会遇到任何媒体查询或希望保留在 head 标签中的类似项目的问题。每次您通过内联程序运行电子邮件时,我都会确保在所有设备上测试您的电子邮件,以确保其跨客户端正常工作。