我有这个基于百里香的电子邮件模板:
<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<title th:text="#{email.reset.title}">reset title</title>
<meta http-equiv="Content-Type" content="text/html;charset=UTF-8" />
</head>
<body th:style="'background: url(' + |cid:background| + ') no-repeat'">
<div style="margin:110px 0 0 50px;">
<div style="min-width:10px;min-height:300px"></div>
<img style="display:block;margin-top:110px" th:src="|cid:logo|" />
<img style="display:block;margin-top:110px" th:src="|cid:background|" />
</div>
</body>
并且我已经定义了两个这样的变量:
message.addInline( "logo", new ClassPathResource( "mails/images/logo.png" ), "image/png" );
message.addInline( "background", new ClassPathResource( "mails/images/background.png" ), "image/png" );
来自img
标签的两个图像在发送的电子邮件中正确显示,但是未显示作为body
背景的相同图像。不知道为什么。
在Java spring中使用百里香。
答案 0 :(得分:0)
几个月前,我做了类似的事情,然后像这样使用
:<body th:style="'background: url(' + |cid:${background}| + ') no-repeat;'">
如果没有美元符号$和大括号,我将无法正确使用该变量。
我希望这会有所帮助。
答案 1 :(得分:0)
我有类似的问题,正在使用类似
<body th style="margin: 0; padding: 0; background-image: url(images/background.png)"
data-th-style="|background-position: center; background-repeat: no-repeat; background-size: cover; background-color: #ccc; background-image: url(cid:background)|"
>
它适用于手机,但不适用于台式机。我不确定是否是因为质量。 仍在努力。 如果可行,请尝试此操作。