如何在Contact Form 7中格式化不一致的电子邮件字体?

时间:2018-08-30 01:17:07

标签: css fonts html-email inline contact-form-7

我有一个简单的联系表7表格,效果很好。我将其设置为HTML,并且将p标记设置为Arial,并将其设置为粗体。

所有粗体都可以。并且大多数文本设置为Arial。但是,如果邮件的中有多行,则会在随后的几行中恢复为Times New Roman。

什么是确保将整个电子邮件(只有几个p标签)始终设置为正确的字体系列的正确方法?我应该把它们全部包起来吗?大HTML电子邮件格式总是一个谜。

示例:

public static void main(String[] args) {
    List<String> colors = new ArrayList<>(); 
    Collections.addAll(colors, "red", null, "blue", "green", null);
    removeNulls(colors);
    System.out.println(colors);
}

1 个答案:

答案 0 :(得分:0)

这是因为您有一个段落标记,该标记具有字体清除:

<p style="font-family: Arial, Helvetica, sans-serif; font-size: 11pt;">

如果添加新的parapragh,它必须与其他段落标签具有相同的字体样式,以使其统一。

尝试使用一个表作为具有字体标记的外部包装,现在无论您创建字体的段落标记数保持不变。

<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>

这将确保您的段落与换行符保持不变,或者您可以使用中断标签来模拟段落标签。我个人使用中断标签来避免多余的代码。

希望以上内容回答您的问题。