我使用的系统可以使用电子邮件模板制作和发送电子邮件,我在尝试将本地字体(任何类型)附加到电子邮件时遇到问题。
我以这种方式附加了@ 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>
答案 0 :(得分:0)
相对URL将相对于CSS的位置。
在电子邮件中似乎是内联的,没有网址。所以相对URL没有任何关系。
我假设在使用CDN时你会有一个绝对网址:你需要为每个非嵌入资源提供一个网址,