无法在HTML(python/flask)中引用CSS
我正在尝试使用Python和Flask创建一个简单的网站。现在,我已经完成了HTML和CSS,但是我的页面没有显示任何CSS。我的文件位于以下层次结构中:无法在HTML(python/flask)中引用CSS,html,css,flask,Html,Css,Flask,我正在尝试使用Python和Flask创建一个简单的网站。现在,我已经完成了HTML和CSS,但是我的页面没有显示任何CSS。我的文件位于以下层次结构中: /static /static/css/style.css /static/js/skel.js /templates /templates/index.html 我的html文件中有以下代码: 当我运行此命令时,终端显示JS文件的“304”,并从“/static/JS/skel.JS”中获取它们,我认为这是正确的,但它随后显示CSS
/static
/static/css/style.css
/static/js/skel.js
/templates
/templates/index.html
我的html文件中有以下代码:
当我运行此命令时,终端显示JS文件的“304”,并从“/static/JS/skel.JS”中获取它们,我认为这是正确的,但它随后显示CSS文件的“404”,并从“/CSS/style.CSS”中获取它们。我不太清楚为什么会发生这种情况——这不应该是从/static/css/style.css检索文件吗?我怎样才能修好它
感谢您的帮助。您的磁盘布局与Flask站点提供的路由不同。不要依赖模板
和静态
之间的相对路径
相反,让Flask使用Jinja模板中的url\u for()
函数为您计算到静态文件的路由:
如果模板确实是您拥有的,而您的布局确实是您列出的,则它们不匹配:
/static/css/style.css
不匹配
<link rel="stylesheet" href="../static/style.css" />
但正如其他人提到的,最好让flask通过
url\u为您生成url(参见教程步骤6中的示例) 我也有同样的问题。这就解决了它:
打开你的config.js
并在css/…
前面添加static/
,在所有链接中,如href=“css/style.css”
中,使它们看起来像href=“static/css/style.css”
,这样应该可以
这个问题已经问了5个月了,但我希望我能帮助有同样问题的人。嗨,Martijn,谢谢你的帮助。我只是把你发布的更改放进去,但输出似乎没有什么不同。但是,当我直接在浏览器上查看html文件时,CSS的某些部分正在工作。通过烧瓶,它根本不起作用。这应该发生吗?还有,倒数第二行应该是“css/style.css”对吗?@user2853043:你的帖子中没有使用css/
,所以我省略了它。它应该与static
文件夹中的路径匹配。@user2853043:使用浏览器开发人员工具以及Flask控制台日志输出来调试静态文件未加载的原因。查看生成的HTML源以查看实际生成的URL,尝试直接访问这些URL,并查看Flask为这些URL生成的404错误。例如,我已取消删除它
<link rel="stylesheet" href="../static/css/style.css" />
<link rel="stylesheet" href="static/css/style.css" />