在电子邮件中嵌入 HTML 表格
Posted
技术标签:
【中文标题】在电子邮件中嵌入 HTML 表格【英文标题】:Embed HTML table in email 【发布时间】:2011-09-01 04:38:33 【问题描述】:是否可以将表格(以 html 编码)作为电子邮件正文发送,以便收件人能够查看表格(已解析并显示)。
例如,我希望能够将其作为电子邮件的正文发送:
<html>
<table>
<tr>
<td> col1 </td>
<td> col2 </td>
</tr>
</table>
</html>
以便收件人看到col1 col2
。
我在某些地方读到这是不可能的,我必须使用电子邮件服务提供的表格创建器,但我想确认一下是否可能.
【问题讨论】:
有可能。你用什么发送电子邮件? “我必须使用电子邮件服务提供的‘表格创建者’”听起来有人渴望出售。您可以使用 HTML,但如果客户端不支持它,您需要替代文本。您如何执行此操作取决于您用于发送电子邮件的内容。 我正在使用 MS Outlook 发送电子邮件。 【参考方案1】:您可以发送一封电子邮件,其中包含table
,其中包含数据。只需确保将其样式化为“包含数据的表格”即可。以此为例。
如果您正在构建电子邮件。
<html>
<table style="border:1px solid #333">
<tr>
<td align="center">head</td>
</tr>
<tr>
<td align="center">
body
<table align="center" border="0" cellspacing="0" cellpadding="0" style="border:1px solid #ccc;">
<tr>
<td> data </td>
<td> info </td>
</tr>
</table>
</td>
</tr>
</table>
</html>
【讨论】:
“只要确保将其设置为“包含数据的表格”即可。”我不太清楚你的意思。 我想我误解了你的问题。您是在问是否可以通过电子邮件发送表格? - 我以为你在问是否可以在电子邮件中放置表格 - 基于表格。【参考方案2】:这取决于收件人的电子邮件客户端。有些以 HTML 显示,有些只显示纯文本。
【讨论】:
哦,那么最好的解决方案是基本上只创建该表的 HTML 文档并将其作为附件发送? 这是一个可行的解决方案。然后他们可以用他们选择的任何程序打开它。 哦,好的。我希望可以将表格嵌入到电子邮件中,因为它一目了然。【参考方案3】:当您在c#
字符串中嵌入HTML 时,您不能直接使用HTML
或Body
标记,因为它已经显示在HTML
页面中。下面是一个简单的表格格式。
body += "<table align ='center'>"
body += "<tr>"
body += "<td align = 'right' > Name : </td>"
body += "<td >" + Name + "</td>"
body += "</tr>"
body += "<tr>"
body += "<td align = 'right' > Application ID :</td>"
body += "<td >" + ApplicationID + "</td>"
body += "</tr>"
body += "<tr>"
body += "<td align = 'right' > Passport No :</td>"
body += "<td >" + PassportNo + " </td>"
body += "</tr>"
body += "<tr>"
body += "<td align = 'right' > Voucher No. :</td>"
body += "<td >" + VoucherNo + "</td>"
body += "</tr>"
body += "<tr>"
body += "<td align = 'right' > Date : </td>"
body += "<td >" + PDate + "</td>"
body += "</tr>"
body += "</table><br>"
你也可以像下面那样做样式
例子
body+="<td style='padding:10px; height:20px; width=200px'>Hello World!</td>"
【讨论】:
【参考方案4】:您可以在 HTML 中创建表格,在浏览器中打开它并将其复制并粘贴到 Outlook 中(基于您在 cmets 中提供的额外信息)
Outlook 将理解您的 HTML,并以与您粘贴的格式相同的格式提供。
如果客户端使用纯文本电子邮件(现在不太可能 - 大多数智能手机都在解析 HTML 电子邮件),那么它的显示方式类似于:
Header| Header 2 | Header 3
Test | test | Test
Test | test | Test
Test | test | Test
没有任何样式。
【讨论】:
【参考方案5】:几年前我发现使用 Thunderbird 时可以在邮件正文中插入表格。从那以后,我改用 mutt。所以,出于好奇,我通过在一个简单的乳胶表上使用 latex2html 在 html 中创建了一个表。然后我打开 mutt 编辑器创建一封电子邮件,并将 html 代码复制并粘贴到 mutt 编辑器中,然后关闭它以进入 mutt 撰写菜单。在发送电子邮件之前,我使用Ctrl-t
编辑内容类型并将其从“text/plain”更改为“text/html”。发送电子邮件并在浏览器中以 gmail 格式打开它后,表格的显示与我想要的完全一样。
因此,总而言之,可以将 html 表格粘贴到 mutt 编辑器(在我的例子中是 vim)中,然后在发送之前更改内容类型。
【讨论】:
以上是关于在电子邮件中嵌入 HTML 表格的主要内容,如果未能解决你的问题,请参考以下文章
在 Thunderbird 中使用 Content-ID 和 cid 嵌入电子邮件图像
MS Access 2003 - Access 表单上的嵌入式 Excel 电子表格