我尝试使用 PHP 邮件发送功能动态发送电子邮件,但由于某些原因,我的电子邮件没有显示颜色。
$to = $fetch_querygetemail['email'];
$subject = "report";
//$message = $_POST['allreportcont'];
$message = @"
<table style='width:700px; background-color:#F9F9F9; padding:20px;'>
<tbody><tr>
<td colspan='2'><span style='color:#f68e36; font-weight:bold !important;'>Coupons Sales</span> <span style='color:#333;'>(From: 2014-08-12 | To: 2014-08-29)</span><br>
<hr></td></tr>
<tr>
<td style='color:#333; padding-left:45px; width:300px;'>Coupons Offered</td>
<td>831</td>
</tr>
<tr>
<td style='color:#333; padding-left:45px;'>Coupons Left</td>
<td>715</td>
</tr>
<tr>
<td style='color:#333; padding-left:45px;'>Total Sold</td>
<td>193</td>
</tr>
<tr>
<td style='color:#333; padding-left:45px;'>Sold & Redeemed</td>
<td>18</td>
</tr>
<tr>
<td style='color:#333; padding-left:45px;'>Sold & Unredeemed (Expired)</td>
<td>175</td>
</tr>
<tr>
<td colspan='2'>&nbsp;</td>
</tr>
<tr>
<td colspan='2'><span style='color:#f68e36; font-weight:bold !important;'>Amount Sales</span><br>
<hr></td>
</tr>
<tr>
<td style='color:#333; padding-left:45px;'>Gross Sales</td>
<td>$2100</td>
</tr>
<tr>
<td style='color:#333; padding-left:45px;'>Discount Offered</td>
<td>$70</td>
</tr>
</tbody></table>
";
$headers = "MIME-Version: 1.0" . "\r\n";
$headers .= "Content-type:text/html;charset=UTF-8" . "\r\n";
$headers .= 'From: Sales<sales@ashdjhsad.com>' . "\r\n";
mail($to,$subject,$message,$headers);
电子邮件完美地发送到我的邮箱,但不显示 CSS 颜色和宽度,我该如何解决这个问题?
关于 <table style='width:700px; background-color:#F9F9F9; padding:20px;'>
的 CSS正在工作没有其他内部 CSS 正在工作。
最佳答案
不要使用 style
属性,因为并非所有电子邮件客户端都尊重它。
相反,您想使用旧的、丑陋的 HTML4 代码。
<td><font color="#333333>Coupons Offered</font></td>
在我的回答中查看更多关于处理 HTML 电子邮件的信息:Best practices for styling HTML emails
此外,此支持矩阵在处理电子邮件和您的预期目标时非常有用:https://www.campaignmonitor.com/css/
关于php - CSS 颜色在 HTML 电子邮件中丢失,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/25578895/