在电子邮件每行末尾自动添加的额外空间
本文关键字:添加 空间 电子邮件 | 更新日期: 2023-09-27 17:50:51
我正在使用c#通过SMTP发送电子邮件。电子邮件是HTML格式的。
我使用了下面的代码来创建消息体。
objMailMsg = new System.Text.StringBuilder();
objMailMsg.Append("<div style='margin: 20px;'>");
objMailMsg.Append("Welcome,");
objMailMsg.Append("<br /><br />Your User Name is ");
objMailMsg.Append(emailid);
objMailMsg.Append("<br /><br />Password is ");
objMailMsg.Append(password + "</div>");
objmail.MailMessage = objMailMsg.ToString();
生成的电子邮件将如下所示
欢迎Your User Name is username.
密码为7x*NG9p%2_
问题是当我尝试复制密码时,它也复制了额外的空间,当我从outlook 2003打开这封电子邮件时,自动添加在末尾(在这种情况下代替_)。以前,这个代码没有"div"围绕电子邮件的内容。添加"div"修复了outlook 2003的这个问题。
我现在已经将outlook升级到2013,这个问题又出现了。
有人能帮我解决这个问题吗?
是否使用了String.Trim()
Password.Trim ()删除所有前后空白字符。
正如我在上一个答案的评论中所说的。至少现在我已经用TABLE代替DIV解决了这个问题。
当我使用Outlook 2003阅读邮件时使用DIV是可以的,现在我有Outlook 2013。两者都使用不同的渲染引擎,IE6的Outlook 2003渲染引擎,而MS Word的Outlook 2007以后的版本对HTML的支持有限。
我不知道这是否可以作为答案,但我觉得我应该分享我的发现。