引用HTML电子邮件中的CSS文件

时间:2015-06-29 15:09:49

标签: html css spring email thymeleaf

我有一个关于Thymeleaf + Spring MVC的项目,并尝试使用Thymeleaf发送HTML电子邮件。

我的印象是,我唯一需要做的就是创建一个模板文件,并传递像我一直为常规页面做的参数。看起来我错了。当我这样做时,它不适用于CSS。 (事实上​​它甚至没有引用CSS文件。)我不知道Google是删除CSS文件还是所有邮件客户端所做的事情。

看起来谷歌还编码了HTML元素的类和ID,所以我唯一的选择是使用内联CSS还是有办法在HTML电子邮件中引用CSS文件?

<img src="some_url" class="CToWUd">

上面是Gmail上的img标记。它看起来应该是这样的:

<img src="some_url" class="topImage" />

提前致谢

2 个答案:

答案 0 :(得分:3)

自动从电子邮件中删除head标记很常见,Gmail肯定会这样做。

请尝试引用body中的样式表。

如果不这样做,您可以将CSS放在正文中的style标记中:

<html>

<body>

<style>
    p {
        // style here
    }
</style>

// Rest of HTML here

</body>

</html>

答案 1 :(得分:1)

不幸的是,HTML电子邮件中的外部样式表链接支持得很差。

此外,Gmail实际上会从stylehead中删除body个标记,因此您确实需要在发送之前将所有样式内联,以确保Gmail不会删除它们。

Campaign Monitor有一个很棒的CSS Support Guide,它概述了您可以在所有电子邮件客户端中使用和不能使用的内容。