python - 应用程序未获取 .css 文件(flask/python)

标签 python html css templates flask

我正在渲染一个模板,我正在尝试使用外部样式表对其进行样式设置。文件结构如下。

/app
    - app_runner.py
    /services
        - app.py 
    /templates
        - mainpage.html
    /styles
        - mainpage.css

mainpage.html 看起来像这样

<html>
    <head>
        <link rel= "stylesheet" type= "text/css" href= "../styles/mainpage.css">
    </head>
    <body>
        <!-- content --> 

我的样式都没有被应用。这与 html 是我正在渲染的模板这一事实有关吗? python 长这样。

return render_template("mainpage.html", variables..)

我知道这很有效,因为我仍然能够渲染模板。但是,当我尝试将样式代码从 html 的“head”标记中的“样式” block 移动到外部文件时,所有样式都消失了,只剩下一个 html 页面。有人看到我的文件结构有任何错误吗?

最佳答案

除非您在 Flask 初始化期间专门覆盖它,否则您需要设置“静态”文件夹(用于 css/js 文件)。我假设你没有覆盖它。

你的 css 目录结构应该是这样的:

/app
    - app_runner.py
    /services
        - app.py 
    /templates
        - mainpage.html
    /static
        /styles
            - mainpage.css

注意你的/styles 目录应该在/static 下

然后,这样做

<link rel= "stylesheet" type= "text/css" href= "{{ url_for('static',filename='styles/mainpage.css') }}">

Flask 现在将在 static/styles/mainpage.css 下查找 css 文件

关于python - 应用程序未获取 .css 文件(flask/python),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/22259847/

相关文章:

css - 在列表中垂直居中标签和输入

javascript - Twilio 视频不显示

javascript - 如何从 URL 数组向文档添加图像列表?

html - 覆盖子元素的 css 属性

html - 嵌套列表 : avoid styling of both lists 上的 CSS

Python绘图y轴平均标签不会显示并且日期都很拥挤

javascript - python 列表到 javascript 数组

python - 点云到体积

css - 当给定集合为 nil 时渲染部分集合

python - django 如何与 virtualenv 一起工作?