我正在开发一个系统,该系统将电子邮件发送给可能从公共接入点或“封闭”接入点(看不到互联网)读取电子邮件的收件人。我以 HTML 格式发送的电子邮件可能嵌入了图像。这些图像是预定义的,并且存在于已知位置。自然,从(公共)互联网读取的电子邮件无法加载托管在(私人)封闭网络中的图像;从封闭网络读取的电子邮件无法从互联网加载图像。
目前,在电子邮件生成期间,我们正在根据收件人的电子邮件地址确定我们应该将 设置img src
为公共路径还是私有路径。我很想找到一种本机 HTML 技术,它可以告诉电子邮件客户端“尝试这个图像的公共路径,如果它不加载故障转移到这个私有路径”。我的理解是,几乎总是希望电子邮件客户端去除 JavaScript,因此 ECMA 不会成为该解决方案的一部分。可悲的是。
尝试 1
我尝试将 设置src
为图像的公共路径,并将background-image
样式属性设置为图像的私有路径:
<img src="path/to/
public
/my_image.jpg" style="background-image:url('path/to/
private
/my_image.jpg');" ..etc.. />
这在浏览器中效果很好(特别是如果设置了高度/宽度属性),但 Outlook (2007) 不支持background-image
. 所以,没有快乐。
尝试 2
table
我尝试用图像创建一个background
:
<table background="path/to/private/my_image.jpg">
<tr>
<td>
<img src="path/to/public/my_image.jpg" />
</td>
</tr>
</table>
Outlook 也没有这样做。
尝试 3
本着“工作起来可能很疯狂”的精神,我尝试为src
图像提供两个属性:
<img src="path/to/
public
/my_image.jpg" src="path/to/
private
/my_image.jpg" ..etc.. />
那在任何地方都行不通。只有第一个src
会习惯于尝试加载图像。