我使用此template在django项目中创建主页,但我无法正确显示背景图像(bg.jpg)
背景图片用作css文件中的foollows:
.wrapper.style3 {
background-color: #000;
color: #bfbfbf;
background-image: url(/media/usr/path_to_project/project_name/home/static/images/bg.jpg);
background-size: cover;
background-attachment: fixed;
background-position: center;
position: relative;
}
我阅读了这些主题
并尝试了所有解决方案,但其中没有解决方案似乎有用。
我的项目树就像
project_name
- home
- static
--home
---style.css
--images
---bg.jpg
- templates
-- home
---base.html
---home_template.html
在style.css文件中我尝试了以下
background-image: url(/media/usr/path_to_project/project_name/home/static/images/bg.jpg);
background-image: url("/media/usr/path_to_project/project_name/home/static/images/bg.jpg");
background-image: url(../images/bg.jpg);
background-image: url("../images/bg.jpg");
background-image: url("{% static 'images.bg.jpg' %});
在我的base.html模板中我有:
{% load static %}
<link rel="stylesheet" type="text/css" href="{% static 'home/style.css' %}"/>
在我的home_template.html中我有
{% block body %}
{% load staticfiles %}
<section id="two" class="wrapper style3">
<div class="inner">
<header class="align-center">
<p>Nam vel ante sit amet libero scelerisque facilisis eleifend vitae urna</p>
<h2>Morbi maximus justo</h2>
</header>
</div>
</section>
{% endblock %}
奇怪的是,我的静态/图像目录中有其他图像在模板中显示正常,具有内联样式,例如:
<div class="image fit">
<img src="{% static 'images/pic03.jpg' %}" alt="" />
</div>
答案 0 :(得分:4)
您应该只使用background-image: url('/static/images/bg.jpg');
,因为Django会自动将/static
映射到正确的文件夹。
答案 1 :(得分:1)
有一个特殊的设置可以处理如何提供静态文件:STATIC_URL。
那是正确的使用路径。