My background-image仅适用于包含@app.route('/')的模板。
<header class="intro-header" style="background-image: url('static/img/home.jpg')">
在以下情况下,此方法工作得非常好:
@app.route('/')
def home():
return render_template('post.html')
一切正常。我明白了:
127.0.0.1 - - [19/Sep/2016 21:07:11] "GET /static/img/home.jpg HTTP/1.1" 304
但是当我使用相同的模板时:
@app.route('/post/')
def post():
return render_template('post.html')
我明白了:
127.0.0.1 - - [19/Sep/2016 21:15:23] "GET /post/static/img/home.jpg HTTP/1.1" 404 -
背景图像是空白的。
发布于 2016-09-19 18:28:33
This is a simple problem can solved by Flask documentation
无论如何,你应该在你的模板中使用类似这样的东西:
background-image: url({{ url_for('static', filename='img/home.jpg') }})
但是,如果您不想使用Flask方法,请使用:
url('/static/img/home.jpg')
或者为您的文件使用其他web服务器,而不是flask默认web服务器,如Apache并通过http://yoursite/static/img/home.jpg
访问
发布于 2016-09-19 18:24:26
部分URL是相对于样式表源而不是相对于document - w3 CSS进行解释的
这意味着您需要稍微更改您的url()
,以包含领先的/
。
"background-image: url('/static/img/home.jpg')"
发布于 2021-05-04 19:39:44
4年零7个月太晚了,但不管怎样,以防有人需要帮助..
我发现flask识别出我的静态图像位于‘.jpg’中,所以添加' static‘就是添加了一个“额外的”静态。对我有用的是,使用骨架方法,
背景图片: url('home.jpg');
简单而赤裸裸的,就像一具骨架。
https://stackoverflow.com/questions/39579666
复制相似问题