1

我有一个网站,我正在与 python 和 django 放在一起。我有一个模板 html 页面,Speakers.html扩展Base.html. Base.html有样式表base.css

Speakers.html正在显示base.css应有的样式,我的问题是我想Speakers.html从另一个样式表中获得额外的样式,speakers.css.

我一直试图弄清楚但speaker.css似乎没有应用,事实上我刚刚在 cmd 输出中注意到文件 speaker.css 根本没有被加载。

我尝试将它放在一个块中,这是您现在在下面看到的代码。我不得不重复{% load static %}以消除有关它期望 endblock 的错误,但它似乎没有产生任何影响。

Base.html

<!DOCTYPE HTML>
<html lang="en">

<head>
    <title>Base.Html</title>
    {% load static %}
    <link rel="stylesheet"  type="text/css" href="{% static "CSS/base.css" %}" />
    {% block additionalcss %}{% endblock %}
</head>

<body>

...ect

演讲者.html

<!-- extending works -->
{% extends "Base.html" %} 


 <!-- Now i'm trying to load an additional stylesheet -->
{% block additionalcss %}
{% load static %}
<link rel="stylesheet"  type="text/css" href="{% static "CSS/speakers.css" %}" />
{% endblock %}

{% block currentpage_content %}
<h2>Guest speakers at the event</h2>

<p> This text would be red if speakers.css was applying properly </p>
...ect

出于测试目的,我在 Speakers.css 中添加了以下规则:

*
{
color: red;
}

因此,我认为 Speakers.html 上的文本如果正常工作,应该都是红色的。

4

1 回答 1

5

尝试blocks在模板中使用。

就像是:

Base.html

<!DOCTYPE HTML>
<html lang="en">

<head>
    <title>Base.Html</title>
    {% load static %}

    {% block css %}{% endblock %}
    <link rel="stylesheet"  type="text/css" href="{% static "CSS/base.css" %}" />
</head>

<body>

...ect

演讲者.html

<!-- extending works -->
{% extends "Base.html" %} 

{% block css %}
{% load static %}
<link rel="stylesheet"  type="text/css" href="{% static "CSS/speakers.css" %}" />
{% endblock %}

{% block currentpage_content %}
<h2>Guest speakers at the event</h2>

<p> This text would be red if speakers.css was applying properly </p>
...ect

通过在父级中定义块然后在子级中指定它们,css 文件将被插入到您的模板中。

于 2012-06-26T18:53:49.070 回答