在Outlook中回复/转发HTML电子邮件会显示隐藏的内容/中断

Luk*_*ith 4 html email outlook html-email responsive-design

我正在利用一种技术来制作"响应式"电子邮件,其中包含两个版本.一个明确写的桌面和一个写的移动.使用条件语句和CSS(mso-hide:all; display:none;)的组合来隐藏桌面客户端中的移动版本,反之亦然.

这非常有效,并且符合预期.当我转发或回复其中一封电子邮件时,样式会中断并显示之前隐藏的"移动"版本.我尝试在表上使用内联样式(mso-hide:all; display:none;),以及应用类和使用条件注释以CSS方式应用相同的样式,但它不起作用.

我举一个例子,但工作相当敏感.

基本上,我正在寻找一种方法来隐藏Outlook中的表,并在回复/转发电子邮件时保持隐藏状态.

zaz*_*eph 6

尝试包装您的移动版本<!--[if !mso]><!--> [tables] <!--<![endif]-->.这应该可以防止移动版本被outlook解释,从而被转发.

转发html电子邮件意味着转发已经由客户端处理的html,如果你看一下outlook处理的html文件,那就太可怕了.充满垃圾MS代码.

大多数电子邮件开发人员(包括我自己)都接受您无法控制转发的电子邮件,因此不要尝试编码,以便正常转发.


Joh*_*ohn 2

它们都内联设置了 CSS 显示值吗?您是否在媒体查询中使用 !important 标签覆盖内联声明?

Outlook 经常会丢弃媒体查询(尤其是在转发时),因此,如果您只有一个可见的内联版本作为默认视图,也许这可能会起作用 - 无论如何,这对于 Gmail 等非样式标签客户端来说应该是这样...