Html 在css中使用的图像文件的电子邮件中使用cid:attachmentID的语法是什么
我正在编写一个脚本,通过电子邮件将一些格式化的html和图像发送给收件人。使用MIME::Lite,我找到了一种发送css文件及其用作附件的图像文件的方法。该图像显示在邮件消息的末尾-作为附件。以下行似乎可以工作:Html 在css中使用的图像文件的电子邮件中使用cid:attachmentID的语法是什么,html,css,perl,html-email,mime-mail,Html,Css,Perl,Html Email,Mime Mail,我正在编写一个脚本,通过电子邮件将一些格式化的html和图像发送给收件人。使用MIME::Lite,我找到了一种发送css文件及其用作附件的图像文件的方法。该图像显示在邮件消息的末尾-作为附件。以下行似乎可以工作: <link href="cid:style.css" rel="stylesheet" type="text/css" /> 此外,如何阻止邮件客户端自行显示图像?我使用的脚本如下: my $msg = MIME::Lite->new( From =>"fr
<link href="cid:style.css" rel="stylesheet" type="text/css" />
此外,如何阻止邮件客户端自行显示图像?我使用的脚本如下:
my $msg = MIME::Lite->new( From =>"from\@company\.com",
To => "to\@company\.com",,
Subject =>"Action Required",
Disposition =>'inline',
Type =>'multipart/related');
$msg->attach(Type => 'text/html', Data => qq{@htFileContents});
$msg->attach(Type => 'text/html', Id => $cssFileName, Data => qq{@cssFileContents});
$msg->attach(Type => 'image/png', Id => $imageFile, Path => $imageFile);
$msg->send("sendmail","/usr/sbin/sendmail -t");
让邮件客户端从http服务器访问css或图像文件的URL不是一个选项。电子邮件必须是独立的。TIA提供了一个显示语法的示例。这实际上不起作用。即使你奇迹般地让你的附件可以互相查看和交流,Outlook也不支持背景图像,Gmail会删除你链接的css文件和任何嵌入的css,hotmail也不支持css背景
听起来您需要在某个地方托管一封接受动态部分的HTML电子邮件,并从应用程序中触发发送,在发送之前将动态部分传递给它以填充。查看Lyris Listmanager之类的工具。标题和上面发布的问题之间没有联系 无论如何,为了发送电子邮件,安全地显示电子邮件中附加的图像,仅使用一些cid:url引用图像是不够的 将图像附加到电子邮件具有以下细节:
- 将图像的外部URL替换为电子邮件中附件的URL
- 要生成的电子邮件不仅仅是默认情况下JavaMail解释的多部分/混合类型,而是MIME多部分/相关类型,以便允许电子邮件客户端使用图像
- 必须具有图像的附件
- 内容配置:内联;文件名=…标题,以便它们不显示为附件,而是允许电子邮件客户端使用它们
- ContentID:唯一-name@domain标题,其中必须用实际值替换唯一名称和域,并保留
! 示例:ContentId:logo。png@paysafe.com
- 电子邮件的HTML部分(邮件正文)中的引用通过cid:content-id URL进行,其中content-id是保存图像的附件的ContentId头的值 例如:
- 用于邮件协议特定属性
- -定义CID:URL架构和addr spec的使用
- -以以下形式定义addr规范:本地部分“@”域
- -定义内容处置标头
- -MIME多部分/相关内容类型-对图像内联至关重要
my $msg = MIME::Lite->new( From =>"from\@company\.com",
To => "to\@company\.com",,
Subject =>"Action Required",
Disposition =>'inline',
Type =>'multipart/related');
$msg->attach(Type => 'text/html', Data => qq{@htFileContents});
$msg->attach(Type => 'text/html', Id => $cssFileName, Data => qq{@cssFileContents});
$msg->attach(Type => 'image/png', Id => $imageFile, Path => $imageFile);
$msg->send("sendmail","/usr/sbin/sendmail -t");