不能包含Jawr的单个CSS文件

时间:2014-10-02 20:06:35

标签: java javascript css jawr

因此,我们在Jawr项目中使用Spring并且一切正常,但是当我尝试包含这样的单个css文件时:

<jwr:style src="/assets/css/style2.css" />

它包含css目录中的所有文件

<link rel="stylesheet" type="text/css" media="screen" href="/assets/css/non-responsive.css?d=35303629" />

<script type="text/javascript">/* The resource '/assets/css/non-responsive.css' is already included in the page. */</script>

<link rel="stylesheet" type="text/css" media="screen" href="/assets/css/style1.css?d=48250928" />

<link rel="stylesheet" type="text/css" media="screen" href="/assets/css/style2.css?d=444574087" />

<link rel="stylesheet" type="text/css" media="screen" href="/assets/css/style3.css?d=68336060" />

<script type="text/javascript">/* The resource '/assets/css/style3.css' is already included in the page. */</script>

<script type="text/javascript">/* Finished adding members resolved by /assets/css/style2.css */</script>

<script type="text/javascript">/* Start adding members resolved by '/assets/js/summary.js'. Bundle id is: '/assets/js/summary.js' */</script>

<script type="text/javascript" src="/assets/js/summary.js?d=82086305" ></script>

<script type="text/javascript">/* Finished adding members resolved by /assets/js/summary.js */</script>

这适用于单个JS文件,如最后两行所示,但由于某些原因不适用于CSS文件。 我错过了什么,或者我应该以传统方式包含文件?

1 个答案:

答案 0 :(得分:0)

因为Jawr将assets/css/内的所有内容视为变体外观,所以它会加载所有文件。

您需要在文件夹中只使用该样式才能加载单个文件。

有关详情,请参阅https://jawr.java.net/tutorials/howToUseJawrCssSkin.html,但以下部分摘录了您的问题:


为了定义CSS外观,Jawr使用目录层次结构约定。 用户需要定义默认的CSS皮肤根目录。在同一级别定义的所有目录都将被视为外观变体。 要定义默认皮肤根目录,用户必须设置属性jawr.css.skin.default.root.dirs。 此属性定义默认CSS根目录的列表。因此,使用Jawr,您可以处理多个CSS皮肤根目录。

例如,如果将默认皮肤根目录定义为:/ css / skins / defaultSkin。 你有一个像这样的目录结构: enter image description here

如果将Jawr配置设置为:

    jawr.css.skin.default.root.dirs=/css/skins/defaultSkin

Jawr会将 blueSkin greenSkin 视为 defaultSkin 的变体。