Gmail HTML电子邮件背景颜色

23

有没有办法在Gmail中使用颜色作为HTML电子邮件的背景?

我尝试将页面主体的背景颜色设置为灰色,但它没有生效。

<body leftmargin="0" topmargin="0" marginwidth="0" marginheight="0" bgcolor="#e2e3e7" style="font-family:Arial, Helvetica, sans-serif;">
4个回答

33

将您的电子邮件放在一个单元表格中,表格的宽度和高度都设置为100%,然后为该单元格设置背景颜色。

<table width="100%" height="100%">
    <tr>
        <td width="100%" height="100%" bgcolor="#e2e3e7">

            <!-- "Content" table goes here -->
            <table width="600" align="center" bgcolor="#ffffff">

            </table>

        </td>
    </tr>
</table>

3
这很有用,但如果你想让表格充满整个电子邮件窗口,你还需要在上面的<table>标签中添加width="100%"和height="100%"。因此,应该写成<table width="100%" height="100%">。 - Chris
这段代码对我来说是有效的。 - Bhavin

16

Gmail(以及其他邮件客户端)会删除所有未嵌入的CSS。因此,表格的hack只起作用是因为您在内联定义了颜色。您不需要使用表格,而是可以使用

<body style="background-color:#242a30;">

1
虽然我更喜欢这种方法,但是一般化的说法“其他邮件客户端”也许有误导性。我会说还有一些其他的邮件提供商也这样做。 - random_user_name
Gmail会从正文中去除所有的样式类。对于 Gmail 来说,正确的答案是来自 @digout 的那个。 - Stavros

9

我刚刚也做了同样的事情。如果你将电子邮件正文放入表格中,你可以设置表格的bgcolor,这样就可以起作用了。

我原来是使用<body bgcolor='lightcyan'>,然后我改成了<body> <table bgcolor='lightcyan'>并将我的内容放入该表格中。


1

在大多数情况下,您需要居中电子邮件... 所以我使用了一个宽度为"1680px"的方法来使其居中,而简单的align="center"并不适用于我。

<table>
<tr>
    <td width="1680px"  align="center" valign="middle" bgcolor="#e4ebdd">

        <table width='600' align='center' bgcolor='#ffffff'>
        <!-- .... -->

    </td>
</tr>


1
宽度属性中不应该使用无单位(px),而且bgcolor和valign已经被弃用。最后,不要混用单引号和双引号。 - Raptor

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接