Flask Web 应用程序的 CSS 问题

新手上路,请多包涵

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

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

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

Flask 有什么特别的地方可以让它工作吗?

我已经尝试和改变了大约半个小时,但似乎无法做到正确。

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

原文由 Rohit Rayudu 发布,翻译遵循 CC BY-SA 4.0 许可协议

阅读 507
2 个回答

你不需要对 Flask 做任何特别的事情来让 CSS 工作。也许您将 style.css 放入 flask_project/stylesheets/ ?除非正确配置,否则您的应用程序不会提供此类目录。查看 Flask 快速入门静态文件 部分了解更多信息。但是,总而言之,这就是您想要做的:

  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 在她的回答中所说:

在生产环境中,您最好通过 apache 或 nginx 提供静态文件,但这对开发人员来说已经足够了。

原文由 Nathan 发布,翻译遵循 CC BY-SA 3.0 许可协议

尝试使用重新加载 chrome

Ctrl+Shift+R

原文由 Tanishka Gupta 发布,翻译遵循 CC BY-SA 4.0 许可协议

撰写回答
你尚未登录,登录后可以
  • 和开发者交流问题的细节
  • 关注并接收问题和回答的更新提醒
  • 参与内容的编辑和改进,让解决方法与时俱进
推荐问题
logo
Stack Overflow 翻译
子站问答
访问
宣传栏