【问题标题】:Missing theme after switching to from HTML to Freemarker从 HTML 切换到 Freemarker 后缺少主题
【发布时间】:2018-07-12 19:48:58
【问题描述】:

我对 freemarker 比较陌生,我正在尝试将正确显示的 .html 文件转换为 .ftl 文件

除了网页的主题(背景)之外,网页主要部分的转换非常顺利(所有元素都在那里)。它不显示,但它在 html 中。

我的主题只是一个指向 .min.css 文件的链接。

<link rel="stylesheet" href="../static/themes-dist-4.0.27-theme-gcwu-fegc/theme-gcwu-fegc/css/theme.min.css">

我想了解您是否可以直接将“html 传递给 ftl”? 另外,你能在 ftl 文件中显示主题吗?

编辑: 对此的答案是将文件放入公共目录(ressources/public/themes/*)。编译器从那里拾取它。

【问题讨论】:

  • 如果您将 html 文件重命名为 ftl 文件,只要您的后端设置正确,它就可以正常工作。对于您的主题文件,这听起来像 css。添加一些关于如何包含主题的代码
  • 是的,我认为我的后端设置正确。我以前做过直接转换。我应该包括完整的 css 吗? @Huangism
  • 不,问题很可能不是css本身,因为它以前工作过。 1 - 您的其他 css 文件是否有效? 2 - 你确定主题 css 在页面上并且文件的 url 是正确的吗? 3 - 使用检查器查看 css 中是否有某些内容被覆盖
  • 是的,我的其他 css 文件工作。是的,文件的 url 是正确的。不,它不会在 css 中被覆盖。它是这个 ftl 文件中唯一导入的 css 文件。
  • 你看到css文件的内容了吗?如果它没有被覆盖,那么它应该可以工作(我假设你看到文件的内容就是你知道它没有被覆盖)

标签: html freemarker


【解决方案1】:

您可能需要了解 FreeMarker 模板文件是在服务器上执行的,而浏览器只会将输出视为常规 HTLM。因此,您可以简单地将 .html 重命名为 .ftl(或者更确切地说是 .ftlh),并且由于它不包含 FreeMarker 指令,因此该模板仅按原样打印原始 HTML。

如果 CSS 文件已成功加载,请检查浏览器的开发人员面板(通常使用 F12 打开)。 CSS 文件(通常)不是 FreeMarker 模板,只是一个“静态”文件,因此它与 FreeMarker 无关(当然,如果您需要动态,它也可以由 FreeMarker 生成)。

【讨论】:

  • 是的,谢谢您的解释。我会看看css文件是否被覆盖。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2015-12-03
  • 2020-08-19
  • 2019-09-09
  • 2021-04-26
  • 1970-01-01
相关资源
最近更新 更多