当表单发生更改时,用户会收到一封电子邮件。我想使用twitter bootstrap以更具可读性的格式显示信息。令我惊讶的是,样式text-info可以正确显示,但不能正确显示表格样式。这是语法错误还是与ColdFusion用来创建电子邮件的超文本标记语言渲染引擎的类型有关?我正在使用Outlook查看电子邮件。
下面我试过了:
<cfmail from="test.com" to="me.com" subject="tester" type="html">
<html>
<head>
<!---<link href="/bootstrap/css/bootstrap.min.css" rel="stylesheet">--->
</head>
<body>
<style type="text/css">
<cfinclude template="/bootstrap/css/bootstrap.min.css">
</style>
<!--- Start comparing --->
<p class="text-info">
Has updated the following Project Information for Project
</p>
<table class="table table-striped" style="width: 600px">
<tr>
<th>Field</th>
<th>Original</th>
<th>Modified</th>
</tr>
<cfif compare(xOrig,xMod) IS NOT 0>
<tr>
<td>Field1</td>
<td>#xOrig</td>
<td>#xMod#</td>
</tr>
</cfif>
</table>
</body>
</html>
</cfmail>发布于 2012-11-11 06:36:30
包含外部样式表来呈现电子邮件并不是最佳实践,事实上,它甚至不适用于您想要做的绝大多数事情,因为电子邮件客户端会忽略它或删除它。
为了有效地呈现样式的电子邮件,你需要写你的CSS内联,甚至不在电子邮件正文的头部。示例:
<p style="color:#000;"></p>使用内联样式会让你得到最好的回报。使用MailChimp上的以下资源作为指南:Mailchimp HTML Email Templates
发布于 2012-11-10 09:08:59
无论是包含文件内容还是通过URL引用样式表,都应该始终将样式放在head标记中。虽然您可以将它们放在正文中,但您可能会在HTML呈现引擎之间获得不一致的行为。
我个人会使用您注释掉的链接标签。但是,由于电子邮件不在您的web服务器上,您必须使用绝对引用,而不是相对引用:
<link href="http://www.mysite.com/bootstrap/css/bootstrap.min.css" rel="stylesheet">https://stackoverflow.com/questions/13317884
复制相似问题