0

I'm working on a testing tool in asp mvc. One of the features is to preview html emails.

However, these emails are going to have things like doctypes and css tags. What are my options to properly display these emails without screwing up the html on my page?

There is no need to keep the formatting and css, just the text and links that comes with it. Any ideas?

4

2 回答 2

5

您可以将整个内容加载到 iFrame 中。

<div id="preview">
    <!-- YOUR ACTUAL PREVIEW SITE -->
    <iframe src="/path/to/newsletter"></iframe>
    <!-- YOUR ACTUAL PREVIEW SITE -->
</div>
于 2013-07-29T18:18:17.637 回答
1

假设这是您自己的 HTML 电子邮件,因此您无需担心 IFrame 中的安全加载将为您提供最接近的呈现。

请注意,IFrame 不会像大多数电子邮件查看器那样去除外部链接,因此虽然视图将非常接近您的 HTML,但它可能无法反映用户将看到的内容。

其他选项:

  • 如果您只关心文本/链接 - 使用Html Agility Pack解析 HTML并提取文本/链接,而不是在您认为有必要时显示
  • 如果您关心安全问题和邮件外观 - 尝试搜索过滤掉“不安全”HTML 的库(如外部链接、脚本等)或使用 Html Agility Pack 并过滤掉除您绝对认为的内容之外的所有内容安全的。
于 2013-07-29T18:23:24.750 回答