在jinja2模板上使用css样式表

pto*_*my0 29 html css python jinja2 flask

我正在使用html,css,flask和jinja2创建一个网站.

我有一个页面在烧瓶服务器上工作,显示按钮和标签等,但我没有加载我的CSS样式表.

如何将样式表链接到jinja2模板.我在互联网上环顾四周,但无法找到方法.

这是css样式表链接; 我应该改变这个,还是python代码?

<link rel="stylesheet" type="text/css" href="styles.css">

这是我的烧瓶代码:

@app.route('/')
def resultstemplate():
    return render_template('questions.html', head='Welcome!')
Run Code Online (Sandbox Code Playgroud)

这是文件的位置:

/python-code.py /templates/template.html /templates/styles.css

And*_*ovs 30

应将所有公共文件(未处理的文件,如模板或py​​thon文件)放入专用的静态文件夹中.默认情况下,Jinja2有一个名为的静态文件夹static.

这应该可以解决您的问题:

  1. 移动/templates/styles.css/static/styles.css

  2. 使用以下代码更新代码,该代码将转换为正确的文件位置:

    <link rel="stylesheet" href="{{ url_for('static', filename='styles.css') }}">
    
    Run Code Online (Sandbox Code Playgroud)

有关Jinja2中静态文件的更多信息,请点击此处.

  • 如果我已经正确地理解了你,那么CSS就会加载并运行,这个问题/答案已经介绍了.如果您有其他问题,请接受此答案,并将其发布在单独的问题中. (4认同)

Sun*_*B N 6

<link rel="stylesheet" type="text/css" href="styles.css">
Run Code Online (Sandbox Code Playgroud)

href 值必须在引号内。

确保文件名和路径正确或尝试以下操作

<link rel="stylesheet" href="{{ url_for('static', filename='styles.css') }}"/>
Run Code Online (Sandbox Code Playgroud)