2016-04-22 70 views
0

我想在Django提供的一个网页中使用背景图片。理想情况下,我使用css文件并使用css background-image属性,但是当我将它放入我的css文件中时,它不会呈现,但是如果将代码放入HTML文档(内部样式表)中,它将呈现。所以,总结一下。完全相同的代码,在这里:可能带有静态文件和模板的Django错误

<style> 
    body { 
     background-image: url("{% static 'Kitchen.jpg' %}"); 
background-repeat: no-repeat; background-attachment: fixed; 
    } 
    </style> 

上面的代码工作在HTML文档而不是在CSS(减去HTML“风格”标签)。而且,同一个css文件中的其他代码工作得很好。由于某些原因,background-image属性将不会在css文件中执行。

除非有人有另一个想法,似乎这是一个Django软件错误。

回答

0

当您尝试导入html页面时,您是否在css文件中使用了background-image: url("{% static 'Kitchen.jpg' %}");?如果是这样,你应该改变它background-image: url("<path to file>\kitchen.jpg");

+0

嗨卢克,我也尝试过你的建议是什么,都无济于事后。从技术上讲,这个:url(“{%static'Kitchen.jpg'%}”);应该管用。静态文件系统中的某些东西是不正常的,它似乎导致它不起作用。 –

0

这是为我工作。

您忘了写

{%负载staticfiles%}

HTML标签

<html> 
{% load staticfiles %} 
<style> 
    .gd{ 
     background: url("{% static 'images/avatar.jpg' %}"); 
    } 
</style> 
<body> 
<p class="gd"></p> 
</body> 
</html> 
+0

我的html文档里有{%load staticfiles%}。如上所述,这正如我在原始文章中所说的那样。不起作用的是样式表(请参阅原文)。 –