我正在尝试使用基本64位数据网址编码的图像在HTML中进行签名。 这是一个例子:
<img src="data:image/png;base64,iVBORw0KGgoAAAAN...kJggg==">
它在邮件软件上运行良好,如Mac或Thunderbird上的Mail,但它不能与gmail,outlook,roundcube,hotmail等webmail一起使用......
您知道如何让它发挥作用吗? 我真的想把这些图像直接放在源代码中,它更实用。
答案 0 :(得分:23)
简单的回答?
你不能。 Gmail,Outlook等会忽略base64图片。
Look at this site to learn more about this
因此,根据我们的结果,显然不值得在电子邮件中使用嵌入式图像。你所要做的就是强迫人们下载他们无法查看的编码图像。
答案 1 :(得分:0)
我正在使用嵌入式SVG,原因如下:
但如果您真的想在Gmail和Outlook中显示图片,则需要通过HTTP加载这些图片。
来自CSS-tricks的人在电子邮件中有一个很好的SVG指南:https://css-tricks.com/a-guide-on-svg-support-in-email/
最终解决方案如下:
/* Resize an element that has a width and height of zero to full size */
.showy {
height: 100% !important;
width: 100% !important;
}
&#13;
<!-- Image: SVG -->
<img class="showy" width="0" height="0" src="my-image.svg">
<!-- Image: JPG -->
<img class="no-showy" src="my-image.jpg">
&#13;
但我个人不喜欢它,因为我不希望客户询问用户是否要加载其他资源。