我在 Chrome 中有一个奇怪的错误,我将以下 CSS 规则应用于元素:
#element {
background-color: #0E0F10;
background-image: url(images/the_background.jpg);
}
现在,当我第一次打开包含“#element”的新页面时,直到我用 ctrl+f5 刷新页面缓存后才会显示背景图像。
我尝试添加 Pragma、Expires 和 Cache-control 元标记,但没有任何区别。让图片第一次显示的唯一方法是这样放置绝对 url:
#element {
background-color: #0E0F10;
background-image: url(http://site.com/images/the_background.jpg);
}
现在的问题是我无法硬编码站点 url,我需要使用相对于根路径的相对或相对路径。
环顾四周,我发现了一个修复 Chrome 中相关错误的肮脏技巧,巧合的是,它也解决了这个问题:http ://blog.andrewcantino.com/blog/2012/02/15/fixing-the-chrome-background-refresh-bug /
基本上,当我第一次打开页面时,所有背景图像都通过 JavaScript 重新加载,从这里开始它工作正常。
但是,我想实施更优雅的修复或找到问题的真正原因。
我会很感激任何建议。