使用{%include%}在Django中重用CSS

时间:2014-07-28 15:51:25

标签: html css django tags include

我在Django遇到了一个奇怪的问题。让我解释一下:

一些CSS代码使用static模板标记调用存储在静态文件中的背景图像

#listing:not(#foo) div > input + label {
        background: url('{% static 'img/listingSample.png' %}');
        width: 110px;
        height: 99px;
        margin-left: 6px;
        float: left;
        ....

所以我不得不直接在listings.html中调用的views.py模板文件中移动CSS,否则标签将无法呈现。

这一切都很好,直到我意识到我有一个完全不同的页面需要相同的CSS。所以我做的是尝试将其移出listings.html并用{% includes %}标记引用它。但是,现在当我运行代码时,只有一些CSS工作,但不是全部 - 主要是,这一点不起作用:

#listing:not(#foo) div > input:checked + label {
        background: brown;
    }

可能出现什么问题?

1 个答案:

答案 0 :(得分:1)

如果您的资产组织如下:

/static
    /css
        /main.css
    /img
        /listingSample.png

你可以在css中使用绝对路径:

#listing:not(#foo) div > input + label {
    background: url('../img/listingSample.png');
    width: 110px;
    height: 99px;
    ....