我有一个包含15个独立页面的网站。在每个页面上我都有一个名为header的div。我要通过JavaScript删除这个元素,像这样:
homepage.html
<script>
const element = document.getElementById('header');
element.remove();
</script>
问题是,我可以看到头元素一秒钟之前,它被删除。脚本放在页面的顶部。我也试着通过css来做,像这样:
.header {
height: 0rem !important;
visibility: hidden !important;
}
但是,当刷新页面时,我仍然看到元素消失了。
我知道我可以在我的base.html
文件中创建一个模板块,并将其排除在主页。HTML页面中,但我需要手动将其包含在其他14个HTML文件中。
有没有其他更好的方法来排除div,这样我就不会在我的主页上看到它了?
一旦你理解了它的{% block %}的方式,Django的模板系统给你很大的灵活性来操作任何视图上的任何内容。标签工作,特别是与扩展(子)模板相关。
在你的例子中,你能做的就是把你的头html包装在base.html中像这样:
{% block my_header %}
<div class="header"></div>
{% endblock header %}
现在,在首页。html您只需添加以下内容(假设它扩展base.html):
{% extends "base.html" %}
...
{% block my_header %}{% endblock header %}
在这段代码中,你告诉Django用什么都不覆盖header块。我还建议阅读{{块。超级}}.
with css
.header {
display:none;
}