私の背景画像は、@ 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 -
そして、背景画像は空白です。
これはFlaskドキュメント で解決できる簡単な問題です
とにかく、テンプレートでは次のようなものを使用する必要があります。
background-image: url({{ url_for('static', filename='img/home.jpg') }})
ただし、Flaskメソッドを使用しない場合は、次のように使用します。
url('/static/img/home.jpg')
または、flaskの代わりに別のWebサーバーを使用します。Apacheなどのファイル用のデフォルトのWebサーバーとhttp://yoursite/static/img/home.jpg
を介したアクセス
部分的なURLは、ドキュメントではなくスタイルシートのソースに関連して解釈される- w3 CSS
つまり、先頭の_/
_を含めるには、url()
を少し変更する必要があります。
_"background-image: url('/static/img/home.jpg')"
_