【发布时间】:2016-09-17 18:57:17
【问题描述】:
我正在创建一封包含不同变量字段的电子邮件,这些字段将由电子邮件客户端推送,然后将更新一个类的名称。
最初我是这样设置的:
.%%payment_frequency%%
{
display: none;
将更新为分期付款或年度,然后将其应用于不应显示的各种 HTML 元素。这适用于某些电子邮件客户端,但不适用于 Outlook,我发现它在 Outlook 中不起作用,因为由于 3 个不同的变量选项和 3 个单独的类,某些元素具有多个类。
问题是,我可以反向执行此操作并将“显示:无”样式应用于元素,然后在需要时使用类来显示该特定元素吗?我已经尝试过但无法解决这个问题,所以任何建议都会有所帮助。
【问题讨论】:
-
您可以使用
!important规则覆盖内联样式:css-tricks.com/override-inline-styles-with-css。我想说的是,尽管您应该尽量避免使用它(除非它是一次性电子邮件模板),因为它可能会导致将来出现维护噩梦或样式问题 -
我不确定您使用什么来预处理您的电子邮件,但与其隐藏您不想显示的元素,不如干脆不 i> 包括您不想显示的元素。这样你就不用搞双班了。
-
@Milanzor 我们正在使用 Silverpop 发送电子邮件,但在实施过程中,我们不得不使用他们的 Transact 产品,该产品不允许动态内容。我们有 24 个不同版本的同一模板,其中包含小的更改,因此将使用相同的模板并使用可变提要来显示该电子邮件所需的特定元素。这比管理 24 封电子邮件更容易,因为它只是一个不同的表格行。
-
@Sam 您必须使用 CSS 特性来否决您的显示:无类。首先我要说的是,可能有一些电子邮件客户端不能正确地解释你的 CSS(有些甚至去掉它),众所周知,Outlook 的 HTML+CSS 电子邮件呈现非常糟糕,所以要小心。我会在回答中澄清
标签: html css class outlook styles