在百里香模板中插入css

Posted

技术标签:

【中文标题】在百里香模板中插入css【英文标题】:Insert css in thymeleaf template 【发布时间】:2019-12-19 20:20:47 【问题描述】:

我需要在电子邮件模板 (thymeleaf) 中插入样式。我需要为几个模板制作一个通用的 css 文件。

使用spring boot 1.3.3

我尝试关注以下帖子中的内容: Thymeleaf + CSS+SpringBoot

电子邮件文件:资源 > 邮件 > “email.html” css 文件:资源 > 静态 > css > "styles.css"

我对邮件使用 WebContext(我曾经使用 Context,但是 Context 不接受相对路径,并且需要 WebContext)。

在我的 CSS 中:

h1 
color: #78ab46;

在我的模板中:

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
    <title > Hello </title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
    <link rel="stylesheet" type="text/css" media="all"
          href="../static/css/styles.css" th:href="@/css/styles.css" />
</head>
<body>
    <h1> Hello </h1>
</body>

结果是发送了邮件但没有考虑css样式。我也没有看到任何错误消息。

你能帮帮我吗?

谢谢,

曼努埃拉

【问题讨论】:

【参考方案1】:

过去我曾使用片段来处理这类事情。

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
<head>
<div th:replace="fragments/email-header :: head"></div>
    <title > Hello </title>
    <meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
</head>
<body>
    <h1> Hello </h1>
</body>

然后在片段文件夹中我有一个文件 email-header.html

<!DOCTYPE html>
<html xmlns:th="http://www.thymeleaf.org">
    <style>
        h1 
            color: #78ab46;
        
    </style>
</html>

在我复制它的项目中,我将片段用于整个标题。我不明白为什么它不适用于标题的“片段”。

【讨论】:

以上是关于在百里香模板中插入css的主要内容,如果未能解决你的问题,请参考以下文章

如何将两个参数传递给百里香模板?

在百里香中显示项目列表总是出错

如何控制百里香中的href属性

如何在百里香选择选项中获取对象?

如何在百里香中结合 sec:authorize 和 th:if

在引导警报中使用百里香值