【问题标题】:C# Email - New lines not rendering with white-space: pre-wrapC# 电子邮件 - 新行不使用空格呈现:预包装
【发布时间】:2015-07-27 03:10:11
【问题描述】:

我有一封带有表格的电子邮件,其中一个值包含一个包含多行的字符串。 (回车键)在 Outlook 中查看或在 IE 中查看源代码时,空白区域不起作用。

有什么想法或解决方案吗?

谢谢。

【问题讨论】:

    标签: c# css internet-explorer outlook html-email


    【解决方案1】:

    这与 Outlook(不是 C#)有关。我有同样的问题(使用 Java 发送邮件)。我在跨度上使用 CSS 样式 white-space:pre-wrap;,它可以很好地保留制表符、空格、换行符和在 GMail - web、Android 和 iOS 中换行。

    根据我对 Outlook 2016 Windows 应用和 webapp (outlook.office365.com) 的实验:

    • pre-wrap 不会在 Windows 应用和 web 应用中保留新行
    • pre 在 Windows 应用中保留新行,但在 web 应用中不这样做

    【讨论】:

    • 这对我有用: const composeMessage = (message) => message?<p id="announcements"> ${message}</p>: ''; #announcements { white-space: pre-wrap; }
    • @Antuan 什么是`''; #announcements { white-space: pre-wrap; } ` 语法?我应该把它放在哪里?这也显示在 html 中..
    【解决方案2】:

    html 中的新行不会这样呈现。您需要在每行末尾添加<br> 标记,以确保电子邮件与新行正确呈现。

    您可以在您的 c# 代码中执行此操作,方法是将有问题的值中的每个换行符替换为 <br>

    【讨论】:

      猜你喜欢
      • 1970-01-01
      • 1970-01-01
      • 2012-11-28
      • 2015-09-25
      • 1970-01-01
      • 2017-06-19
      • 2011-06-27
      • 2013-06-17
      • 2018-08-19
      相关资源
      最近更新 更多