Php 如何发送交互式电子邮件

Php 如何发送交互式电子邮件,php,html,css,email,interactive,Php,Html,Css,Email,Interactive,我正在尝试向我的客户发送一封互动电子邮件。在下面的代码content.html页面中,包含电子邮件正文的内容,其中仅包含html和csssendmail.php将向收件人的电子邮件地址发送电子邮件 通过sendmail.php成功发送电子邮件,但电子邮件中的html正文未按预期工作 电子邮件正文的工作方式应与本例相同: 但电子邮件显示如下: 我尝试了gmail和hotmail账户,但结果是一样的 content.html .钥匙箱{ 显示:内联块; 边框:10px纯黑; } .钥匙盒标签{

我正在尝试向我的客户发送一封互动电子邮件。在下面的代码
content.html
页面中,包含电子邮件正文的内容,其中仅包含html和css
sendmail.php
将向收件人的电子邮件地址发送电子邮件

通过
sendmail.php
成功发送电子邮件,但电子邮件中的html正文未按预期工作

电子邮件正文的工作方式应与本例相同:

但电子邮件显示如下:

我尝试了gmail和hotmail账户,但结果是一样的

content.html


.钥匙箱{
显示:内联块;
边框:10px纯黑;
}
.钥匙盒标签{
宽度:65px;
高度:55px;
显示:无;
垫面:5px;
字体大小:40px;
文本对齐:居中;
}  
#键1a:选中~.动力学框1标签:第n个孩子(2){
显示:块;
}
#键1b:选中~.动力学框1标签:第n个孩子(3){
显示:块;
}
#键1c:选中~.动力学框1标签:第n个孩子(4){
显示:块;
}
#key1d:选中~.kinetic.box1标签:第n个子项(1){
显示:块;
}

X G H A.
sendmail.php


某些浏览器不支持您使用的某些CSS规则,例如:

Gmail和Outlook都不支持
~
:n子项

这里有一个很好的CSS支持指南:

虽然这张图没有说-我相当肯定Gmail和Outlook也不支持
:checked


有些浏览器允许您使用这些规则,但除非您有意使用特定的电子邮件客户端将特定用户集作为目标,否则无法确保每个人都能正确使用这些规则。

您不能在电子邮件中嵌入或包含样式表。你需要把它内联起来。鉴于您的内容,您无法以这种方式发送任何交互式内容。请使用
内联css
在html中添加样式。发送邮件时不能像这样使用css。@PraveenKumar看一个例子。他们说我们可以发送交互式电子邮件。@chalithagekiyanage都德,你的目标客户是哪个?当然,你不能在GMail中使用它。@PraveenKumar我的主要目标是GMail、outlook和雅虎。能告诉我怎么做吗?哈!我正在搜索这个链接。。。还有你发的。@Albzi你能告诉我做这个炒锅吗?或者有没有什么教程可以让我跟着发互动邮件client@chalithageekiyanage不幸的是,如果您查看链接中的图形,您会发现并非每个浏览器都支持CSS中的所有规则。电子邮件一直是一场战斗,不幸的是,你无法创建一个在每个客户上都能工作的交互式电子邮件。
<html>
<head>
<style>
.keybox{
 display:inline-block;
border:10px solid black;
}
.keybox label{
width:65px;
height:55px;
display:none;
padding-top:5px;
font-size:40px;
text-align:center;
}  
#key1a:checked ~ .kinetic .box1 label:nth-child(2){
display:block;
}
#key1b:checked ~ .kinetic .box1 label:nth-child(3){
display:block;
}
#key1c:checked ~ .kinetic .box1 label:nth-child(4){
display:block;
}
#key1d:checked ~ .kinetic .box1 label:nth-child(1){
display:block;
}
</style>


</head>
<body>

<input id="key1a" name="key1" type=radio>
<input id="key1b" name="key1" type=radio>
<input id="key1c" name="key1" type=radio>
<input id="key1d" name="key1" type=radio checked><BR>
<div class="kinetic">  
<div class="keybox box1">
    <label for="key1a">X</label>
    <label for="key1b">G</label>
    <label for="key1c">H</label>
    <label for="key1d">A</label>
</div>
</div>    
</body>
</html>
<?php
if(($Content = file_get_contents("content.html")) === false) {
    $Content = "";
}

$FromName = "Sample";
$FromEmail = "myemail@email.com";
$ReplyTo = "youremail@email.com";
$ToEmail = "youremail@email.com";
$Subject = "Test";

$Headers  = "MIME-Version: 1.0\n";
$Headers .= "Content-type: text/html; charset=iso-8859-1\n";
$Headers .= "From: ".$FromName." <".$FromEmail.">\n";
$Headers .= "Reply-To: ".$ReplyTo."\n";
$Headers .= "X-Sender: <".$FromEmail.">\n";
$Headers .= "X-Mailer: PHP\n"; 
$Headers .= "X-Priority: 1\n"; 
$Headers .= "Return-Path: <".$FromEmail.">\n";  

if(mail($ToEmail, $Subject, $Content, $Headers) == false) {
    echo "ERRRO!";
}
else{
    echo "OK!";
}
?>