0

最近我们遇到了浏览器缓存 css 文件的问题,因此当我们将代码移动到另一个 Web 服务器时,我们会得到意外和不需要的结果。阅读了各种解决方案后,我想到 css 文件可以包含在模板中。而不是写

<link href="/static/css/parentx.css" rel="stylesheet" type="text/css">

我们可以把

<style>{% include "static/css/parent.css" %}</style>

这会将css嵌入到html中。它的额外好处是减少了为 css 文件返回服务器的次数,但缺点是根本不缓存 css 并且不允许 Web 服务器提供静态文件。但是,这些文件非常小,通常约为 12K。

我建议将其作为一项临时措施,因为我刚刚发现资产管理插件的存在看起来做得更好。我从未见过使用“包含”模板命令来获取 css(和 javascript)文件,所以也许有一个我不知道的缺点?

4

1 回答 1

0

完全不缓存 CSS 文件会减慢页面加载速度,尽管它是不必要的。

尽可能长时间地缓存您的 CSS,当您需要使缓存无效时,一个可靠的方法是加载另一个文件,我的意思是同一个文件具有另一个名称。它可能是parent1391234565.cssorparent-v003.cssparent130307.cssor parent-4e6ca1437f2d.css。如果您告诉浏览器下载parent-v002.css,您可以确定它们parent-v003.css的缓存中没有!

于 2013-03-07T07:28:23.497 回答