【发布时间】:2013-01-14 16:40:55
【问题描述】:
我们有一个内容管理的解决方案(具体来说是 SDL Tridion;但是,这个问题更笼统),其中包括具有不同语言内容的多个网站。它们都共享许多基于 Razor 的模板,这些模板用于在发布页面时呈现带有特定注入内容的 HTML 片段。
CRM 也通过 CMS 进行管理,并且使用相同的模板来创建电子邮件通讯。这些 HTML 电子邮件包含图像,这些图像会发布到管理相关分发列表的任何站点。因为模板系统是通用的,CMS 没有最终产品的绝对 URL 的概念,所以这些图像都嵌入了相对地址。我们有能力将绝对 URL 作为元数据应用到 CMS 中的不同网站,并编写 .Net 扩展以将这些 URL 格式化为渲染图像标签;但是,这会给这项工作增加相当大的开销。
我们可以通过在电子邮件标记的<head> 部分中使用<base href="..." /> 标记来解决此问题。这似乎至少在 Outlook 中有效;但是,我无法找到有关电子邮件客户端支持和不支持此标签的最新信息。
那么问题来了:<base> 标签在电子邮件客户端(尤其是基于浏览器的客户端)中的支持范围有多广?
【问题讨论】:
-
这只是一个猜测,但了解电子邮件客户端,可能根本不知道。我预测您最终将不得不以某种方式提供绝对 URL
-
基于 Web 的电子邮件永远不会有 HEAD,因为邮件主机会将其删除。否则会干扰页面自身的 HEAD。
-
@Diodeus - 这是我关心的问题。我不确定我们是否可以不支持网络邮件而侥幸成功!然而,我能找到的大多数关于这方面的帖子都是几年前的,我想知道基于浏览器的邮件提供商是否在处理此类事情的方式上变得更加精明。
-
大多数关于 HTML 电子邮件的网络帖子都说您应该有绝对链接,尽管有些客户端确实支持基本标签。我认为这就是您的答案,除非您要为 Outlook 等特定客户提供服务。
-
<base>不必在<head>中并且可以 在<body>中。那我们有什么支持呢?
标签: html html-email base email-client