我正在使用C#中的相机创建gif文件,然后将该gif发送到人员电子邮件。我已经附加了gif并创建了一个html电子邮件,然后使用img标签以src作为附加gif文件的cid来内嵌显示gif。
除了android的gmail客户端,它的运行情况非常好。当您在android gmail客户端中查看电子邮件时,gif闪烁,显示帧之间,gif序列结尾处的背景,或者有时显示gif,然后gif消失。
我使用的是表格(似乎div使情况更糟),并且没有背景图片或颜色。有时似乎某些事情我确实解决了问题,因为它运行得很好,但是在打开电子邮件几次或发送了几次之后,gif会再次执行此操作(开始闪烁)。
这是gmail客户端中的错误还是什么?我所做的一切似乎都无济于事。 gif在我尝试过的所有其他客户端中都可以完美运行,并且在浏览器中也可以正常工作。
有什么我可以尝试解决的问题吗?
我确定人们会想看一些代码,所以这很简单
<table width="100%" border="0" cellspacing="0" cellpadding="0" align="center" style="min-width:638px;">
<tr>
<td align="center" valign="top">
<table width="640px" border="0" cellspacing="0" cellpadding="0" align="center">
<tr>
<td width="78px" height="482px" align="center">
<img alt="xxxxxxx" src="cid:B01_frameLeft" border="0" style="display:block;"></a>
</td>
<td width="484px" height="484px" align="center">
<img alt="xxxxxxx" src="cid:B02_gif" border="0" width="484" height="484" style="display:block;"></a>
</td>
<td width="78px" height="482px" align="center">
<img alt="xxxxxxx" src="cid:B03_frameRight" border="0" style="display:block;"></a>
</td>
</tr>
</table>
</td>
</tr>
</table>
最佳答案
因此,似乎如果可能存在多个“层”,则gif“可能”会闪烁。我有多个表包装在一个表中。删除容器表后,gif停止闪烁。我想知道android gmail是否有问题,因为它可能不知道是否应该显示gif或包含表的下一帧?我仍然不确定,但是我敢肯定这可以被认为是一个错误,我真的很惊讶在互联网上关于这一点很少。
无论如何,要解决我的问题,这就是我所做的。
从电子邮件中的所有html中删除了所有bgcolors和背景
删除了包含布局表的容器表,其中一个表包含gif
从使用div更改为使用表
不知道是否需要所有这些,但是在完成这些操作之后,我的gif不再闪烁了