如何覆盖html元素,但保持块的其余部分?



我正在扩展一个小树枝模板,我想替换行

<div class="container">

<div class="container-fluid">

Twig-template

{% block layout_main_navigation %}
<div class="main-navigation"
id="mainNavigation"
data-flyout-menu="true">
{% block layout_main_navigation_navbar %}
<div class="container"> <!-- This line should be replaced -->
{% block layout_main_navigation_menu %}
...
{% endblock %}
...
{% endblock %}
...
{% endblock %}

我试图通过复制所有内容并更改div的类来覆盖layout_main_navigation。但是我对这个解决方案不满意,因为我必须复制和覆盖很多块。

如何实现替换div类并覆盖尽可能少的块?

您可以覆盖块layout_main_navigation_navbar,添加div元素与所需的类container-fluid,然后使用parent()函数包含块layout_main_navigation_menu的原始内容:

{% block layout_main_navigation_navbar %}
<div class="container-fluid">
{% block layout_main_navigation_menu %}
{{ parent() }}
{% endblock %}
</div>
{% endblock %}

最新更新