php - 通过 php 邮件发送电子邮件时,内联 css 不在电子邮件中打印

标签 php html css email

大家好,我正在尝试通过 php 中的电子邮件功能发送电子邮件,但在发送我的电子邮件和回显电子邮件正文之前,它显示得很好,我需要什么,但是在邮件中发送的这个正文是一些 css 不工作。我附上了两张图片(屏幕截图),一张是在发送电子邮件之前,第二张是在我收到电子邮件之后,你会正确理解的。

$body.= '<table border=1><tr><th>Branch</th>';
            for($i=0;$i<count($sections);$i++)
            {
                if($sections[$i]!="Task Admin")
                $body.="<th>".$sections[$i]."</th>";
            }
            $body.="</tr>";
            foreach($mainarrayparent as $keys => $value ) {
            $body.="<tr>";
                foreach($value as $keys1 => $getbranch ) { 
                    $getb = mysql_query("SELECT * from branch where id = '".$keys1."'");
                    $getbrow = mysql_fetch_assoc($getb);

                    $body.="<td>".$keys1." - ".$getbrow['name']."</td>";
                    foreach($getbranch as $keys3 => $getinner ) {
                            if($getinner==0){
                            $body.="<td style='background-color:#C6EFCE;'>".$getinner."</td>";
                            }else if($getinner!=0){
                            $body.="<td style='background-color:#FFC7CE;'>".$getinner."</td>";
                            }
                            else{
                                echo $keys3;

                            }
                    }   
                }
                $body.="</tr>";
            }
                $body.="</table>";
            //#C6EFCE
            echo $body;
            // die;

    //get overdue 


    $subject = "Acquisition Updates";
    $headers = "MIME-Version: 1.0" . "\r\n";
    $headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
    $headers .= 'From: <intranet@daylewis.net>' . "\r\n"; 
    $result = mail('jignesh.prajapati@daylewisplc.co.uk',$subject,$body,$headers);

enter image description here

enter image description here

最佳答案

嗯,我可能知道这个。我记得有些电子邮件程序在处理长文本时存在问题。放置返回和切割可能会导致问题的 html。在其中一些循环的末尾添加返回或 PHP_EOL 可能会有所帮助。

 foreach ($getbranch as $keys3 => $getinner) {
    if ($getinner == 0) {
        $body .= "<td style='background-color:#C6EFCE;'>" . $getinner . "</td>" . PHP_EOL;
    } else if ($getinner != 0) {
        $body .= "<td style='background-color:#FFC7CE;'>" . $getinner . "</td>" . PHP_EOL;
    } else {
        echo $keys3;

    }
}

关于php - 通过 php 邮件发送电子邮件时,内联 css 不在电子邮件中打印,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/44652863/

相关文章:

php - 为什么我不能将任何变量分配给 pChart 中的函数返回值?

php - SQL 查询仅从字符串列中获取第一个单词

生成格式错误的 XML 提要的 PHP DOM 文档

php - PDO 如何在执行 rollBack() 函数之前回滚查询?

html - 什么时候应该在链接上使用目标 ="_blank"?

javascript - 在 html 表格中将特定列设为粗体

javascript - Bootstrap selectpicker 奇怪的行为

html - 响应式 mixins 宽度与设备宽度

javascript - 每当输入更改时更新指令

html - jquery 移动 CSS 类不适用于输入字段