2013-10-17 95 views
0

在Gmail的questionable support for CSS的光,我想申请style元素,一切都在HTML电子邮件,我组装。变换的CSS样式元素剃刀

我目前使用MVC3剃刀来构造电子邮件,然后发送关闭生成的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>

+0

请详细说明。目前还不清楚你在问什么。看起来你已经回答了这个问题,只需使用css a {color:#1c5567; } – Accelerator

+0

@Accelerator - 如果我这么做,GMail会将其删除。我需要把它应用到页面上的每个“”,这样*每个*都有'' – Bobson

+0

哦,我明白你想要做什么。我知道你的问题。您需要使用'!important'来覆盖样式。看到我的答案。 – Accelerator

回答

1

这可能是这样做的最烂的方式,但你可以使用一个简单的CSS解析这样一个CSS Parser并根据需要添加样式属性。

1

既然你从外部样式表覆盖在Gmail的风格,你需要使用!重要覆盖的风格。

a { 
    color:#1c5567 !important; 
} 
+0

Gmail将剥夺任何企图使用CSS,是否包含在''