EPiServer 7:在自定义DOJO模块中加载CSS

时间:2013-05-31 09:11:02

标签: dojo episerver

所以,我在编辑器模式下为用户界面制作这个自定义模块。 由于似乎没有关于此的文件;我对css有疑问。

如何为模块加载自定义css?现在我正在加载它并通过JavaScript将css文件添加到<head>上的postCreate标记。这是一个很好的方法吗?或者你应该保持内联吗?

2 个答案:

答案 0 :(得分:4)

我建议将您的EPiServer扩展实现为Shell模块,或者更好地作为附加组件(也是Shell模块,但可以在EPiServer附加系统中轻松分发/安装/升级/管理)。 。 在这种情况下,它非常容易。您可以在module.config文件中定义CSS资源并将其用于客户端模块:

<?xml version="1.0" encoding="utf-8" ?>
<module >

  <!--...Omitted module.config configuration...-->

  <clientResources>
    <add name="myStyles" path="ClientResources/Styles.css" resourceType="Style"/>
  </clientResources>

  <clientModule>
    <requiredResources>
      <add name="myStyles" />
    </requiredResources>
  </clientModule>

</module>

在此定义模块包含Styles.css文件中的样式,该样式位于模块/附加目录中的ClientResources子文件夹中。然后您按名称要求该资源,因此系统将自动为您的客户端模块加载该文件。 这是最简单的方法。请download Sample add-on for EPiServer 7 CMS,它包含源代码和更多示例。

答案 1 :(得分:1)

另一种方法是简单地要求小部件中的样式表:

define([
'dojo/_base/declare',
'xstyle/css!./relative/to/widget/folder/mystyles.css'], function(declare) {
   // ...
});