django模板:扩展模板是否可以在父页面中更改css?
我有两个Django模板页面,其中一个是“base.html”,基本的html标签设置为基本模板。现在我有一个页面“child.html”,它可以扩展它,其中包含{% extends "base.html" %}
。现在,我不得不改变<body>
背景色为这个特定页面,所以在“child.html”的CSS我写道:django模板:扩展模板是否可以在父页面中更改css?
body {
background-color: #000000;
/* some other css here */
}
但身体似乎没有任何的变化。我想我一定错过了一些东西。请帮忙,谢谢。
编辑: 在 “child.html”,我只是有
<link rel="stylesheet" type="text/css" href="/site-media/css/template_conf.css"/>
,我试图改变身体的CSS在template_conf.css
,而且也包括template_conf.css
没有其他页面。
在主模板:
<body class="{% block body_class %}{% endblock %}">
...
</body>
然后在子模板,只要定义块:
{% block body_class %} my_new_body_css_class {% endblock %}
这将呈现一个<body class="my_new_body_css_class">...</body>
和你有一个链接CSS来定义这个类。
,如果你看到萤火虫或其他浏览器的调试器载入新的CSS, 请尝试:
body {
background-color: #000000 !important;
/* some other css here */
}
为此添加块base.html文件的头部,使你插页那个在base.html文件
<head>
.... other head tags ....
<link rel="stylesheet" type="text/css" href="/site-media/css/template_conf.css"/>
{% block extra_css %}{% endblock %}
</head>
这可以让你在另一增加覆盖template_conf.css
CSS标签陆续CSS标签在child.html
{% block extra_css %}
<link rel="stylesheet" type="text/css" href="/site-media/css/child_template.css"/>
{% endblock %}
这使您可以覆盖需要改变,同时仍然能够调整所需要的页面在child.html部分base.html文件的partd。
有趣。我想知道哪一个是理想的方法。这一个或@ablm建议的一个。任何想法,任何人? – Anupam 2017-01-31 06:36:03
你是什么意思'在'child.html''的CSS?这个CSS如何被包含在模板中? – 2013-02-08 21:05:04
@DanielRoseman:我更新了这个问题。感谢帮助。 – 2013-02-08 21:15:29
这是''link'标记包含在由父级定义的模板块中,因此它实际上被渲染?它是否出现在呈现的HTML中? – 2013-02-08 21:36:47