将 CSS 文件嵌入到多部分 MIME 电子邮件中

发布于 2024-10-11 04:02:27 字数 74 浏览 5 评论 0原文

是否可以像图像一样将 CSS 文件嵌入到多部分 Mime 电子邮件正文中,并使用 cid: (与图像相同的方式)引用邮件正文中的样式?

Is it possible, like for images, to embedded a CSS file into an mutlipart Mime email body message and make reference to that styles within the body of the message using cid: (the same way it is possible for images) ?

如果你对这篇内容有疑问,欢迎到本站社区发帖提问 参与讨论,获取更多帮助,或者扫码二维码加入 Web 技术交流群。

扫码二维码加入Web技术交流群

发布评论

需要 登录 才能够评论, 你可以免费 注册 一个本站的账号。

评论(2

过度放纵 2024-10-18 04:02:27

大多数电子邮件客户端(如 Outlook)远不符合标准。我不知道有哪个完全支持 CSS 2。我从来没有听说过有人在电子邮件中嵌入 CSS 文件,而且我怀疑它是否会非常跨客户端兼容,即使这是可能的。不幸的是,处理电子邮件的方法是带有内联样式的老式 HTML 4 表格。除此之外,不同的客户之间就会存在很大的差异。

Most email clients (like Outlook) are nowhere near standards compliant. I don't know of one that fully support CSS 2. I've never heard of anyone embedding a CSS file inside an email and I doubt it would be very cross-client compatible even if it was possible. Unfortunately, the way to go with emails is old school HTML 4 tables with inline styles. Anything more than that and there will be big differences among the different clients.

So要识趣 2024-10-18 04:02:27

是的。

至少,如果我将以下内容保存为 .mhtml 文件,在 IE 或 Opera 中打开它,它可以工作:

MIME-Version: 1.0
Content-Type: multipart/related; type="text/html";boundary="----boundary"

------boundary
Content-Disposition: inline; filename=test.html
Content-Type: text/html; charset=utf-8; name=test.html
Content-ID: <htmlid>
Content-Transfer-Encoding: 8bit

<!doctype html>
<link rel="stylesheet" href="cid:cssid">
This should be red

------boundary
Content-Disposition: inline; filename=all.css
Content-Type: text/css; charset=utf-8; name=all.css
Content-ID: <cssid>
Content-Transfer-Encoding: 8bit

body{color: red}

------boundary--

这是否意味着它也可以在电子邮件客户端中工作是另一回事,但我不明白为什么它适用于图像链接,但不适用于 CSS 链接。

Yes.

At least, if I save the following as a .mhtml file, and open it in IE or Opera, it works:

MIME-Version: 1.0
Content-Type: multipart/related; type="text/html";boundary="----boundary"

------boundary
Content-Disposition: inline; filename=test.html
Content-Type: text/html; charset=utf-8; name=test.html
Content-ID: <htmlid>
Content-Transfer-Encoding: 8bit

<!doctype html>
<link rel="stylesheet" href="cid:cssid">
This should be red

------boundary
Content-Disposition: inline; filename=all.css
Content-Type: text/css; charset=utf-8; name=all.css
Content-ID: <cssid>
Content-Transfer-Encoding: 8bit

body{color: red}

------boundary--

Whether that means it will also work in e-mail clients is another matter, but I can't see why it would work for image links, but not for CSS links.

~没有更多了~
我们使用 Cookies 和其他技术来定制您的体验包括您的登录状态等。通过阅读我们的 隐私政策 了解更多相关信息。 单击 接受 或继续使用网站,即表示您同意使用 Cookies 和您的相关数据。
原文