似乎无法在 HTMLBody 末尾添加换行符(<br /> 标记被修剪)

Posted

技术标签:

【中文标题】似乎无法在 HTMLBody 末尾添加换行符(<br /> 标记被修剪)【英文标题】:Can't seem to add a line feed to the end of HTMLBody (<br /> tag getting trimmed) 【发布时间】:2014-01-03 22:44:41 【问题描述】:

我们正在创建一个 Outlook 邮件项并设置邮件正文的一部分。然而,客户希望消息正文以干净的新行结尾,以便他可以添加更多文本。

这是一个微不足道的请求,但是...

似乎在.htmlBody 的末尾添加任何不是字符的东西,否则&amp;nbsp; 将被忽略/修剪掉。

我们希望我们的邮件消息以新行结尾,但我们发现:


试过 1

x.HTMLBody = CustomerName & "," & "<p>" 

x.HTMLBody = CustomerName & "," & "<br>"

x.HTMLBody = CustomerName & "," & "<br><br>"

所有结果:

Mr MAWHOOD,
           ^ = cursor positioned here

这不是客户想要的......他希望光标从新行开始


试过 2

x.HTMLBody = CustomerName & "," & "<br>&nbsp;"

结果:

Mr MAWHOOD,

 ^ = cursor positioned here (one space in)

这稍微好一点......但客户仍然想知道为什么我们的新线路上有这个“hacky”空间


试过 3

x.HTMLBody = CustomerName & "," & "<p>&nbsp;</p><br />"

结果:

Mr MAWHOOD,



^ = cursor positioned here (correct, but now two lines down)

奇怪的是,获得新修剪线的唯一方法是我们接受我们必须拥有两条?


【问题讨论】:

你试过用2个标签结束吗? @FoxHound 请看我的编辑 您是否在 Outlook 以外的任何其他电子邮件客户端中检查过这个?甚至是基于网络的。 我进一步研究了它,似乎删除尾随 标记是 html 页面的正常行为,邮件正文将是什么。我在记事本中创建了一个简单的 html 页面,并且在那里删除了尾随中断。您的“尝试 3”部分中的代码在有或没有 的情况下都给了我相同的结果,它仍然在那里被修剪。那个最后也给了我一个空间。 @abhitalks 这是一个内部系统,Outlook 是他们内部拥有的 【参考方案1】:

您应该尝试第二种方法,但添加

&#08;

HTML 字符在末尾。这是退格字符,可能会在换行后取消“hacky”空间。所以

x.HTMLBody = CustomerName & "," & "<br />&nbsp;&#08;"

我在这里找到它:http://www.w3schools.com/TAGS/ref_ascii.asp 但是我不能确定它会起作用,而且它可能不会....

【讨论】:

感谢您的提示...但您是对的。我已经尝试过了,但对我来说(至少)它不起作用

以上是关于似乎无法在 HTMLBody 末尾添加换行符(<br /> 标记被修剪)的主要内容,如果未能解决你的问题,请参考以下文章

JetBrains Rider “重新格式化代码”操作 (Ctrl+Alt+L) 删除文件末尾的换行符

在 bash 文件末尾添加换行符

在 curl 响应正文的末尾自动添加换行符

无法在屏幕末尾添加工具栏

print默认在末尾添加一个换行符,但其实也可以不用!

Bash:将字符串添加到文件末尾而不换行