我正在使用一种技术来制作“响应式”电子邮件,其中包含两个版本。一个明确写的桌面和一个写的移动。使用条件语句和CSS(mso-hide:all; display:none;)的组合来隐藏桌面客户端中的移动版本,反之亦然。
这完美无缺,并且符合预期。当我转发或回复其中一封电子邮件时,样式会中断并显示之前隐藏的“移动”版本。我尝试在表上使用内联样式(mso-hide:all; display:none;),以及应用类和使用条件注释以CSS方式应用相同的样式,但它不起作用。
我会举一个例子,但工作相当敏感。
基本上,我正在设法隐藏Outlook中的表,并在回复/转发电子邮件时保持隐藏状态。
答案 0 :(得分:5)
尝试在<!--[if !mso]><!--> [tables] <!--<![endif]-->
中包装您的移动版本。这应该可以防止移动版本被outlook解释,从而被转发。
转发HTML电子邮件意味着转发已经由客户端处理过的html,如果你看一下outlook处理的html文件,那就太可怕了。填写垃圾MS代码。
大多数电子邮件开发人员(包括我自己)都接受您无法控制转发的电子邮件,因此请勿尝试编码,以便正常转发。
答案 1 :(得分:2)
他们是否都将CSS显示值设置为内联?您是否使用媒体查询中的!important标记覆盖内联声明?
Outlook经常会破坏媒体查询(特别是在转发时),因此,如果您只有一个版本可见内联作为默认视图,那么这可能会起作用 - 无论如何,这对于非样式标记客户端(例如Gmail)应该是这样。 ..