0

鉴于 GMail对 CSS 的支持存在问题,我想将style元素应用于我正在组装的 HTML 电子邮件中的所有内容。

我目前正在使用 MVC3 的 Razor 构建电子邮件,然后发送生成的 HTML。有什么方法可以让我用样式表编写模板,然后对其进行转换,使每个元素都有一个style具有适当样式的属性?


例如,在一个普通的网页中,我会有类似的东西

<style>
    a { color:#1c5567; }
</style>
<a href="...">Click here!</a>

如果 GMail 用户看到这个,他们不会看到它是蓝绿色的。但是,如果我这样做

<a href="..." style:"color:#1c5567">Click here!</a>

他们会的。但这是一个巨大的可维护性头痛。因此,我想要一个可以采用前一种样式的 HTML 并在后者中输出的过程。

. 为此,我想采用现有的 CSS 样式并将其转换为style="color:#1c5567;"添加到<a>页面上的每个样式中。

4

2 回答 2

1

这可能是最蹩脚的方法,但您可以使用一个简单的 CSS 解析器,如这个CSS Parser并根据需要添加样式属性。

于 2013-10-17T19:18:35.127 回答
1

由于您要从外部样式表覆盖 gmail 中的样式,因此您需要使用 !important 来覆盖样式。

a { 
  color:#1c5567 !important; 
}
于 2013-10-17T21:28:26.177 回答