Ich versuche, eine interaktive E-Mail an meine Kunden zu senden. Im unteren Code content.html
Seite enthält den Inhalt der E-Mail-Körper, die nur die HTML-und CSS enthält. sendmail.php
sendet die E-Mail an die E-Mail-Adresse des Empfängers.So senden Sie eine interaktive E-Mail
E-Mail wird erfolgreich von der sendmail.php
gesendet, aber in der E-Mail funktioniert der HTML-Text nicht wie erwartet.
Körper der E-Mail sollten wie in diesem Beispiel funktionieren: https://codepen.io/freshinbox/pen/worqww
Aber die E-Mail, da dies anzuzeigen:
ich mit beiden gmail und hotmail Konten versucht, aber das Ergebnis ist das gleiche.
content.html
<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>
sendmail.php
<?php
if(($Content = file_get_contents("content.html")) === false) {
$Content = "";
}
$FromName = "Sample";
$FromEmail = "[email protected]";
$ReplyTo = "[email protected]";
$ToEmail = "[email protected]";
$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!";
}
?>
Sie können in E-Mails keine eingebetteten oder eingebetteten Stylesheets verwenden. Sie müssen es inline haben. Angesichts Ihrer Sachen können Sie auf diese Weise keine interaktiven Inhalte senden. –
Verwenden Sie 'inline-css', um Styling in Ihrem HTML hinzuzufügen. Sie können CSS nicht so verwenden, wenn Sie E-Mails senden. –
@PraveenKumar sehen [this] (https://www.emailonacid.com/blog/article/email-development/code-tutorial-how-to-build-an-interactive-puzzle-in-email?utm_referrer=freshinbox .com) Beispiel. Sie sagen, dass wir interaktive E-Mails senden können. –