HTML-Email令人讨厌的破线

jeb*_*bie 10 html php email

我正在深入研究html-email的东西,最后,我还有一个未解决的问题,有令人讨厌的换行符:/

GMail和/或Outlook通常会在标记期间严格破坏行 - 导致完全破坏的外观和感觉..所以可能会发生整个内容都在<h2>中,因为结束标记是通过换行符断开的..

m</strong><br/>Passwort: <
strong>20o3a7
Run Code Online (Sandbox Code Playgroud)

这是我的PHPMailer代码生成的电子邮件损坏的一个例子.

现在,我被一家公司的电子邮件所吸引,这是一个完美风格的时事通讯..在那里我看到了这样的代码:

<table width=3D"100%" cellspacin=
g=3D"0" border=3D"0" cellpadding=3D"0">
Run Code Online (Sandbox Code Playgroud)

这几乎可以看到这个奇怪的电子邮件的任何一行 - >在任何一行总是以"="结尾,如果它在标签或参数字的中间,那就完全正常了!那怎么样?在我看来,这个换行符是在它发送到电子邮件客户端之前产生的,但这只是对我的推测......

我可以找到非常好的文章如何创建一个像这样的正确的HTML电子邮件:

http://24ways.org/2009/rock-solid-html-emails

但没有人写这个令人讨厌的换行问题,但我无法相信我是唯一一个有这个问题的人......:/

Pet*_*ter 13

简单的解决方法

$body = str_replace("<","\r\n<", $body);
Run Code Online (Sandbox Code Playgroud)

每个HTML标记都将从新行开始,为您提供:

m
</strong>
<br/>Passwort: 
<strong>20o3a7
Run Code Online (Sandbox Code Playgroud)

另一件事是,我PHPMailer在许多项目中使用,向所有邮件客户端发送数千封电子邮件,我从未遇到过这个问题.确保您的代码正常.(也许你的文本编辑器正在包装那些行?)

  • 请注意,编码电子邮件中的= 3D表示字符'='(3D是十六进制的ASCII码.) (3认同)