如何将CSS类添加到特定的text.md文件

时间:2019-09-28 11:29:44

标签: module markdown grav

我正在使用Grav模块化页面来构建网站,但是找不到如何定位特定模块来添加CSS类的方法。

我找到了这个https://learn.getgrav.org/16/content/media,但看不到有没有办法做到这一点。

我要实现的目标是页面中每个模块化div都有不同的背景。

1 个答案:

答案 0 :(得分:0)

在模板中:所有模块的共享类

正如一个模块所暗示的那样,要显示它,要浏览该父级的Twig模板中的paren'ts页面集合,您可以在其中添加任何HTML和CSS。

例如,这是一种遍历集合的方法:

{% for module in page.collection %}
    <section class="module">
        {{ module.content }}
    </section>
{% endfor %}

在模板中:特定类

您可以通过使用Twig变量来自定义CSS类。最安全的方法是使用页面的子弹,其中已经转义了字符:

{% for module in page.collection %}
    <section class="module_{{module.slug}}">
        {{ module.content }}
    </section>
{% endfor %}

降价中

您可以使用已经存在的选项来定义CSS:

classes: module1

,然后通过使用header()函数在嫩枝中使用它:

{% for module in page.collection %}
    <section class="module_{{module.header.classes}}">
        {{ module.content }}
    </section>
{% endfor %}

定位特定模块

现在,要定位Twig中的特定模块,您必须导入页面。

这是访问其他页面或子页面内容的通用方法:

{% set imported_page = page.find("/route/to/the/page") %}

然后您可以使用header()content()函数来访问该导入页面的前题和内容:

    <section class="module_{{imported_page.header.classes}}">
        {{ imported_page.content }}
    </section>