格式化HTML电子邮件的最佳方式?

时间:2008-09-19 13:12:08

标签: html email format

我正在实施一个评论控件,允许用户选择评论并将其发送到指定的部门。电子邮件需要以特定的方式进行格式化,我想知道最好的方法是什么。

我是否应该将所有样式信息硬编码为一个大型方法,或者我应该尝试创建一个单独的文件并将其读入,然后用相关信息替换某些标签?

6 个答案:

答案 0 :(得分:6)

如果可能,查找并使用某种模板库。这将使每封电子邮件成为一个模板,然后比硬编码表单更容易维护。

答案 1 :(得分:5)

Campaign监视器有一些经过良好测试的免费模板:

http://www.campaignmonitor.com/templates/

确保您使用的任何内容都能在所有客户端中良好显示。

很棒的指南:

http://www.campaignmonitor.com/blog/archives/2008/05/2008_email_design_guidelines.html

答案 2 :(得分:3)

除了使用某种类型的模板之外,内联样式与HTML电子邮件样式最相似,也是最兼容客户端的样式。并非每个电子邮件客户端都会获取外部样式表,而且许多电子邮件客户端都没有使用嵌入式样式部分。

在这种情况下,我会为电子邮件选择一套相当简单的样式规则,以确保它在不同的电子邮件客户端中看起来相同,并尽量不要太依赖图像,因为许多客户端需要额外的点击显示内容。

答案 3 :(得分:0)

我会使用模板方法。创建一个简单的正则表达式模板系统并不难,用#somevar'替换#somevar#之类的东西。您还可以使用预制模板系统,如Smarty for PHP。我认为这将是最干净的方法。

亚历

答案 4 :(得分:0)

我过去使用过XLST模板来格式化电子邮件。通常,电子邮件最好使用表和内联CSS构建。请注意,Outlook 2007不支持背景图像:(

答案 5 :(得分:0)

绝对使用模板。我使用自定义标签完成了文本模板,如下所示:

<p>Dear |FIRST_NAME|,

但我真的不能推荐这个;这是一个充满痛苦的世界。我第二次这样做(一个用于log4net的html电子邮件appender)我使用xslt将对象(在这种情况下是一个log4net消息)转换为html电子邮件。更整洁。

请注意,某些客户端(例如Lotus Notes)不支持XHTML,因此请使用普通的旧版HTML 1.0,没有css,您应该没问题。