我在按下网站上的按钮后发送邮件,我在这封邮件中发送的正文是用HTML和CSS制作的,因为我需要一些格式。现在的问题是并非所有的CSS都在工作,我也在邮件中启用了HTML,所以这不是问题。它主要是在表格中着色和填充,这是行不通的。在一个全新的项目上测试它时,HTML和CSS可以正常工作。
我正在使用C#和ASP.NET。
这是我正在使用的代码:`
lMessage.Subject = "Versandformular";
lMessage.IsBodyHtml = true;
lMessage.Body = "<html>" +
"<head>" +
" <title>Versandformular</title>" +
" <style>" +
" body {" +
" font-family: Verdana;" +
" }" +
" .artikel > table td, .artikel > table th, .artikel > table {" +
" border: 1px;" +
" border-style: solid;" +
" border-collapse: collapse;" +
" padding: 5px;" +
" padding-right: 40px;" +
" max-width: 350px;" +
" text-align: left;" +
" }" +
" .versand {" +
" border: none;" +
" }" +
" .artikel .versand {" +
" width: 350px;" +
" }" +
" </style>" +
"</head>" +
"<body>" +
" <h2>" +
" Versandformular" +
" </h2>" +
" <div class='container'>" +
" <div class='absender'>" +
" <b>Absender:</b><br />" +
" John Doe<br />" +
" Some street<br />" +
" Some city <br />" +
" 01234 / 567890" +
" </div>" +
" <br />" +
" <div class='empfaenger'>" +
" <b>Empfänger</b><br />" +
" Max Mustermann GmbH & Co. KG<br />" +
" Max Mustermann<br />" +
" 01234 / 5678910<br />" +
" max.mustermann@mail.de<br />" +
" Musterstraße 123<br />" +
" 12345 Musterstadt<br />" +
" Deutschland<br />" +
" Bundesstaat: Keine Angabe<br />" +
" Bemerkungen:<br />" +
" <div class='empf-bemerkung'>" +
" </div>" +
" </div>" +
" <br />" +
" <div class='versand'>" +
" <b>Versand</b>" +
" <table>" +
" <tr>" +
" <td>Versandart</td>" +
" <td>Dokumentsendung EU</td>" +
" </tr>" +
" <tr>" +
" <td>Versanddienst</td>" +
" <td>Standard</td>" +
" </tr>" +
" <tr>" +
" <td>Bemerkungen</td>" +
" <td>Irgendetwas was mit dem Versand zu tun hat</td>" +
" </tr>" +
" <tr>" +
" <td>Nächsten Lieferung beipacken?</td>" +
" <td>Ja</td>" +
" </tr>" +
" <tr>" +
" <td>Termin bis:</td>" +
" <td></td>" +
" </tr>" +
" <tr>" +
" <td>Warenkosten Zahlung</td>" +
" <td>Proforma</td>" +
" </tr>" +
" <tr>" +
" <td>Kostenträger</td>" +
" <td>Absender</td>" +
" </tr>" +
" <tr>" +
" <td>Kostenstelle</td>" +
" <td>IT</td>" +
" </tr>" +
" <tr>" +
" <td>Tracking angeforderdert?</td>" +
" <td>Ja</td>" +
" </tr>" +
" </table>" +
" </div>" +
" <br />" +
" <div class='artikel'>" +
" <b>Artikel</b>" +
" <table>" +
" <tr>" +
" <th>#</th>" +
" <th>ArtikelNr</th>" +
" <th>WarentarifNr</th>" +
" <th>Menge</th>" +
" <th>Preis</th>" +
" <th>Beschreibung</th>" +
" </tr>" +
" <tr>" +
" <td>1</td>" +
" <td>1234567890</td>" +
" <td>1234 5678</td>" +
" <td>5 Stk.</td>" +
" <td>5€</td>" +
" <td>Jede Menge Schrauben</td>" +
" </tr> " +
" </table>" +
" </div>" +
" </div>" +
"</body>" +
"</html>";`
这些样式不起作用:
border: 1px;
border-style: solid;
border-collapse: collapse;
padding: 5px;
padding-right: 40px;
max-width: 350px;
最后,我基本上只是添加发件人,收件人和PDF附件,如果这很重要的话。它只是填充了一些文本来测试它。 我只在Internet Explorer和Outlook 2013和2010中测试过它。因为我只需要那些。
答案 0 :(得分:4)
不要将CSS放在HTML电子邮件中的HEAD标记内,而应使用内联&#34;样式&#34;。 建议这样做,因为大多数邮件客户端将html电子邮件代码的正文和头部分开。
看看https://www.campaignmonitor.com/css/它会引导您根据您使用的电子邮件客户端(Gmail,yahoo,outlook等)在电子邮件正文中显示的CSS
修改强> 改变:
.artikel > table td, .artikel > table th, .artikel > table
到
.artikel table td, .artikel table th, .artikel table
在网址中声明使用&#34;&gt;&#34;选择器在Outlook中不起作用。 http://jsfiddle.net/3gL29qhL/
中的Html