在Octobercms上,从Partial注入CSS

时间:2018-12-17 13:02:22

标签: css octobercms partials octobercms-backend

我尝试使用以下方法从部分注入Javascript和CSS:

function onStart()
{
    $this->addCss('assets/css/style1.css');
    $this->addCss('assets/css/style2.css');
    $this->addJs('assets/js/javascript1.js');
    $this->addJs('assets/js/javascript2.js');

}

在我的布局上,我正在使用{%styes%}和{%scripts%},但是仅成功注入了javascript。没有注入CSS。

我还使用了{%put scripts%}和{%put styles%},但是只再次注入了脚本。

如果我直接在我的layout.htm css上使用上面的代码,但我需要我的局部函数。这可能吗?

1 个答案:

答案 0 :(得分:4)

似乎{% styles %}在尊重层次结构

表示如果您在分部之前使用{% styles %},则会为该分部注入CSS。

因此您在{% styles %}之后出现的部分中没有它的信息,因此不会从中注入样式。

例如。您在部分代码段onStart中包含了css / js 然后,

  

这将起作用

<!-- it will work -->
{% partial 'site/meta' %} <- you are injecting styles in code section
{% styles %} <- its after partial
  

这将起作用

<!-- it will not work -->
{% styles %} <- its before partial
{% partial 'site/meta' %} <- you are injecting styles in code section

因此,我们只需确保包含/注入所有样式,然后使用{% styles %},使其包含有关css包含/注入的所有信息。然后可以使用CSS渲染所有样式标签。

如有疑问,请发表评论。