css - 如何在 Contact Form 7 中格式化不一致的电子邮件字体?
问题描述
我有一个简单的 Contact Form 7 表格,效果很好。我将它设置为 HTML 并有一些简单的格式,我将 p 标签设置为 Arial 和一些粗体。
所有的粗体都很好。大部分文本设置为 Arial。但是,如果消息有多行,它们会在后续行中恢复为 Times New Roman。
确保整个电子邮件(只是几个 p 标签)始终设置为正确的字体系列的正确方法是什么?我应该把它全部包装在一个跨度中吗?分区?HTML 电子邮件格式总是有点神秘。
例子:
<p style="font-family: Arial, Helvetica, sans-serif; font-size: 11pt;">
<b>To Department:</b> [_raw_department]
<b>From:</b> [your-name] <[your-email]>
<b>Company:</b> [corporate-name]
<b>Phone:</b> [phone]
</p>
<p style="font-family: Arial, Helvetica, sans-serif; font-size: 11pt;">
<b>Message Body:</b>
[your-message]
</p>
<p style="font-family: Arial, Helvetica, sans-serif; font-size: 11pt;">
--
This e-mail was sent from a contact form on ABC123 (http://www.abc123.com)
</p>
解决方案
这是因为您有一个具有字体声明的段落标签:
<p style="font-family: Arial, Helvetica, sans-serif; font-size: 11pt;">
如果您添加一个新的段落,它必须具有与其他段落标签相同的字体样式才能使其统一。
尝试使用表格作为具有字体声明的外包装,现在无论您创建多少个段落标签,您的字体都将保持不变。
<table>
<tr>
<td style="font-family: Arial, Helvetica, sans-serif; font-size: 11pt;">
<p>
<b>To Department:</b> [_raw_department]
<b>From:</b> [your-name] <[your-email]>
<b>Company:</b> [corporate-name]
<b>Phone:</b> [phone]
</p>
<p>
<b>Message Body:</b>
[your-message]
</p>
<p style="font-family: Arial, Helvetica, sans-serif; font-size: 11pt;">
--
This e-mail was sent from a contact form on ABC123 (http://www.abc123.com)
</p>
</td>
</tr>
</table>
注意:不同的电子邮件客户端以不同的方式呈现段落边距。如果您使用段落,请将其用作:
<p style="font-weight:normal;margin:0;Margin:0px;padding:0px;"></p>
这将确保您的段落与换行符保持相同,或者您可以使用中断标记来模拟段落标记。就我个人而言,我使用中断标签来避免额外的代码。
希望以上回答你的问题。
推荐阅读
- python - 网页抓取未正确拉回标题
- c# - 如何从服务器端代码访问 asp.net 核心中的目录路径?
- java - IntelliJ 中的构建项目和 gradle 构建有什么区别?
- python - 捆绑 Python 脚本以在不同的 Mac 上运行
- tensorflow - 使用估算器得到 InvalidArgumentError 无法分配设备进行操作和 allow_soft_placement: true 不起作用
- typescript - 打字稿如何使对象的类型成为其当前值的类型?
- r - R - 从 MongoDB 集合中过滤数据
- c++ - 如何编写使用迭代器和特定类型的模板化函数
- sqlite - 获取数据的 Xamarin 离线同步问题
- r - 如何计算一个单词连续出现的次数