python - Flask Web 应用程序的 CSS 问题

标签 python css flask

我无法正确输出 CSS - 我的网页都没有样式。

这是我所有模板中的链接。我做错了什么?

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

为了让 Flask 正常工作,我有什么特别需要做的吗?

我已经尝试和更改了大约半个小时,但似乎无法正确完成。

总结一下:你如何用 Flask 做 CSS - 我必须有任何特殊的 python 代码吗?

最佳答案

你不需要对 Flask 做任何特别的事情来让 CSS 工作。也许您将 style.css 放在 flask_project/stylesheets/ 中?除非正确配置,否则您的应用程序不会提供此类目录。查看 Static Files Flask Quickstart 的部分有关这方面的更多信息。但是,总而言之,这就是您想要做的:

  1. 将你需要的静态文件移动到project_root/static/。假设您将 stylesheets/style.css 移动到 project_root/static/stylesheets/style.css

  2. 改变

    <link ... href="/stylesheets/style.css" />
    

    <link ... href="{{ url_for('static', filename='stylesheets/style.css') }}" />
    

    这告诉模板解析器(Jinja2)告诉 Flask 在你的元素目录中找到配置的静态目录(默认为 static/)并返回文件的路径。

    • 如果你真的想要,你可以将路径设置为/static/stylesheets/style.css。但是您真的不应该这样做 - 使用 url_for 可以让您切换静态目录并且仍然可以正常工作,还有其他优点。

而且,正如@RachelSanders 在她的回答中所说:

In a production setting, you'd ideally serve your static files via apache or nginx, but this is good enough for dev.

关于python - Flask Web 应用程序的 CSS 问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13772884/

相关文章:

css - CSS背景属性中的 `transparent`是什么意思?

python - 为什么 Flask 不应该与内置服务器一起部署?

python - 保留两个列表之间的差异顺序

python - 如何编写 IPython shell 的包装器?

javascript - secp256k1/schnorr 库不会相互通信

python - 在 Tkinter 中按下按钮时播放音效

php - 如何将 CSS 类添加到 Zend_Form_Element_Select 选项

html - 文本html中的额外间距

url - Kubernetes 中的端点 URL 管理

Python 记录 : how to add a custom field to LogRecord, 并注册一个全局回调来设置它的值