我突然有一个非常奇怪的问题,我的浏览器(Chrome,Safari,Firefox)没有下载外部css文件。我正在为heroku构建一个python flask应用程序。我正在开发本地服务器(gunicorn和默认的烧瓶服务器)。当我加载我的主页时,除了我的主样式表外,一切似乎都很好。 <link>
节点显示在Chrome devtools下。
<link rel="stylsheet" href="/static/main.4dd3f5a6.css" type="text/css">
我可以点击href
,然后会打开一个带有缩小的CSS的标签。但是,当我查看Resources
标签下时,它不会显示样式表。
我在网上找到的一个可能的问题可能是我的本地服务器使用错误的Content-Type
为css服务。但是,当我在Network
标签下查看内容类型时,样式表甚至不显示在那里!
我正在使用Flask-Assets来加载我的资产。它似乎适用于我的JavaScript,只是不是我的CSS。以下是我设置webassets的一些相关代码。
asset_env = Environment(app)
asset_env.debug = True
asset_env.url = app.static_url_path
asset_env.append_path("assets")
js_bundle = Bundle("js/*", filters="jsmin", output="main.%(version)s.js")
css_bundle = Bundle("css/*", "css/font-awesome-4.1.0/css/font-awesome.css",
filters="cssmin", output="main.%(version)s.css")
asset_env.register("js", js_bundle)
asset_env.register("css", css_bundle)
我也尝试过部署到我的heroku应用程序(它不在生产中),我的服务器和我的开发服务器上的问题相同。
有什么想法吗?
答案 0 :(得分:1)
派对有点晚了,但我遇到了同样的问题。
将type属性移动到link语句的前面后,它就可以了。
<link type="text/css" href="{{ ASSET_URL }}" rel="stylesheet">
而不是
<link rel="stylsheet" href="{{ ASSET_URL }}" type="text/css">