【问题标题】:PEAR MAIL HTML email not well formatted in Hotmail/Yahoo/GMailPEAR MAIL HTML 电子邮件在 Hotmail/Yahoo/GMail 中的格式不正确
【发布时间】:2011-01-08 20:59:09
【问题描述】:

我正在使用 PEAR 从我的网站发送 HTML 电子邮件。 我的电子邮件已发送,但在 Hotmail/Yahoo/GMail 中查看时未根据 CSS 进行格式化。当我在 Windows Live MAil 中查看它们时,它们看起来很棒。

更具体地说,似乎没有考虑任何 CSS(文本格式、背景图像等)。

这是我用来发送电子邮件的代码:

$headers = array('From' => $from, 'Subject' => $subject, 'To' => $to);

require_once 'Mail.php';
require_once 'Mail/mime.php';

$crlf = "\n";

$mime = new Mail_mime($crlf);
$mime->setTXTBody($plainText);
$mime->setHTMLBody($htmlText);

$body = $mime->get();
$headers = $mime->headers($headers);

$mail = Mail::factory("mail");
$send = $mail->send($to, $headers, $body);
if (PEAR::isError($send)) {
    $mail_sent = 0;
}else {
    $mail_sent = 1;
}   

我应该在标题中包含 Content-Type 吗?我试过了,但没有用。

$htmlText 是一个包含我的 html 的变量。样式嵌入到 HTML 中(未链接到 CSS 文件)。

如果有人能告诉我为什么我的电子邮件没有在网络客户端中格式化,我将不胜感激。

非常感谢,

Ziv

【问题讨论】:

    标签: php html email format pear


    【解决方案1】:

    您只能在邮件中使用非常简单的样式规则,并且应该内联而不是在嵌入的样式表中指定。你可以在这里阅读很多信息:

    http://www.anandgraves.com/html-email-guide

    【讨论】:

    • 感谢您的快速回复,这很有帮助。我仍然遇到一些问题,但我想这完全取决于反复试验。再次感谢。
    【解决方案2】:

    最好假设邮件客户端最多只支持内联样式和图片。

    【讨论】:

      猜你喜欢
      • 2014-11-30
      • 2013-11-20
      • 2015-11-07
      • 2011-10-09
      • 1970-01-01
      • 2015-09-29
      • 2012-09-04
      • 2011-06-26
      • 1970-01-01
      相关资源
      最近更新 更多