4

出于某种原因,发送到 Hotmail 或在 Microsoft Outlook 上查看的电子邮件总是显示为空白,据我所知,其他人都很好(除了使用 Hotmail 和 Outlook 的人之外,没有人抱怨过)。

我使用 CodeIgniter,这是电子邮件的设置:

$config['mailtype'] = "html";
$config['charset'] = "utf-8";
$config['newline'] = "\r\n";
$config['crlf'] = "\r\n";

这就是电子邮件模板的样子:

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
<html>
    <head><title>Welcome to <?php echo $site_name; ?>!</title></head>
    <body>
        <div style="max-width: 800px; margin: 0; padding: 30px 0;">
            <table width="80%" border="0" cellpadding="0" cellspacing="0">
                <tr>
                    <td width="5%"></td>
                    <td align="left" width="95%" style="font: 13px/18px Arial, Helvetica, sans-serif;">
                        <img src="<?php echo base_url(); ?>/media/images/logo.png" alt="Logo" />
                        <br /><br />
                        <h2 style="font: normal 20px/23px Arial, Helvetica, sans-serif; margin: 0; padding: 0 0 18px; color: black;">Welcome to <?php echo $site_name; ?>!</h2>
                        Thanks for joining <?php echo $site_name; ?>. We listed your sign in details below, make sure you keep them safe.<br />
                        To verify your email address, please follow this link:<br />
                        <br />
                        <big style="font: 16px/18px Arial, Helvetica, sans-serif;"><b><a href="<?php echo site_url('/activate/'.$user_id.'/'.$new_email_key.'/'.$newsletter); ?>" style="color: #3366cc;">Finish your registration...</a></b></big><br /><br />
                        Link doesn't work? Copy the following link to your browser address bar<br />
                        <nobr><a href="<?php echo site_url('/activate/'.$user_id.'/'.$new_email_key.'/'.$newsletter); ?>" style="color: #3366cc;"><?php echo site_url('/activate/'.$user_id.'/'.$new_email_key.'/'.$newsletter); ?></a></nobr><br />
                        <br />
                        Please verify your email within <?php echo $activation_period; ?> hours, otherwise your registration will become invalid and you will have to register again.<br />
                        <br />
                        <br />
                        Please note that this is an automated message, do not respond to this email. If you have any questions, please don't hesitate to <a href="<?php echo base_url(); ?>contact-us">contact us here</a>.
                        <br />
                        <br />
                        Have fun!<br />
                        The <?php echo $site_name; ?> Team
                    </td>
                </tr>
            </table>
        </div>
    </body>
</html>

在 Outlook 和 Hotmail 中进行这项工作时,我是否缺少一些东西?谢谢!

4

1 回答 1

8

由于某种原因,Hotmail/Outlook 不喜欢换行符和 crlf 电子邮件配置上的“\r\n”。删除那些解决了问题。

于 2011-10-18T17:03:46.270 回答