@ font-face不允许在电子邮件模板中使用本地字体

时间:2017-03-15 15:32:07

标签: html email fonts webfonts

我使用的系统可以使用电子邮件模板制作和发送电子邮件,我在尝试将本地字体(任何类型)附加到电子邮件时遇到问题。

我以这种方式附加了@ font-face的字体(预渲染的HTML):

 <style>
@font-face {
    font-family: "Pacifico";
    src: url("../resources/Pacifico.ttf");
}

body, span, div, input[type=text], label {
    font-family: 'Pacifico' !important;
color:red;
}
</style>

渲染后,准备发送HTML页面包含一个相应的字体链接(我可以从Tomcat服务器localhost:8080 /.../ font中成功下载字体作为字体(内容类型正确))并上传正常。但是,页面没有实现它,字体本身没有表现出来(似乎使用了默认字体)。

此问题仅与本地存储的字体有关 - 如果我使用任何CDN电子邮件正确呈现。

该字体是100%可行的,因为当我创建一个虚拟HTML页面并附加字体(带有指向文件夹的直接链接)时,它正确应用。

修改

这个问题可能与Tomcat和我的应用程序中的字体内容类型的不等性有关(Tomcat中的应用程序/ x-font-ttf,应用程序中的.ttf字体VS字体/ ttf)?

修改2

呈现的HTML包含此代码段

<style>
    @font-face {
    font-family: "Pacifico";
    src: url("http://localhost:8080/path/to/resource/Pacifico.ttf");
}    
body, span, div, input[type=text], label {
    font-family: 'Pacifico' !important;
color:red;
}
</style>

1 个答案:

答案 0 :(得分:0)

相对URL将相对于CSS的位置。

在电子邮件中似乎是内联的,没有网址。所以相对URL没有任何关系。

我假设在使用CDN时你会有一个绝对网址:你需要为每个非嵌入资源提供一个网址,