如何在 html 封电子邮件中撰写电子邮件回复或转发?

How can an email reply or forward be composed in html emails?

我正在创建一个简单的电子邮件客户端,但在 html 封电子邮件中回复和转发时遇到问题。

当我让用户撰写回复消息时,我该如何将该内容附加到消息的顶部?我已经通过将新消息内容注入段落或 div 或类似内容来调查 outlook 如何做到这一点。

一般是如何完成的,即 gmail、yahoo 等。他们如何找出在 html 中注入回复内容的位置?

我正在使用 c#,所以理想情况下有一些 c# 库可以处理这个问题?如果没有,那么想知道它通常是如何完成的,这样我就可以为它创建一个解决方案。

我读过维基百科的 Posting Style 文章,它很好地概述了总体思路,但在 html.

中没有提到如何去做

一些背景知识

撰写 HTML 电子邮件时,重要的是要认识到电子邮件客户端对 HTML 的支持相当有限,并且支持级别因电子邮件客户端而异。

因此,尽管 <div> 和 CSS 是正确的网页布局工具,但 HTML 电子邮件并非如此。即使在今天,也使用 <table> 来控制 HTML 封电子邮件的布局。

此外,应用 CSS 的唯一可靠方法是对 HTML 元素应用每个元素的 style= 属性。 CSS 部分中的 <head> 声明经常被电子邮件客户端忽略。在制作 HTML 电子邮件时,我实际上在 <head> 中使用了 CSS,一旦看起来正确,就使用 this page to convert the HTML to use style= attributes. There are other options.

不仅 <head> 标签经常被忽略,任何 <body> 标签也是如此。

解决您的问题

我建议将回复中包含的文本放在 table 中(单个 <tr> 和单个 <td>),并应用内联 CSS 样式table。这允许您应用格式,例如在左侧放置一个彩色条、将文本设为斜体等)。