为什么我的CSS"有时"变得棘手

Jam*_*ath 5 css ruby-on-rails

我的一个网站表现得很奇怪.布局有时很好,有时候很麻烦.我看到问题的示例页面是这一个:链接

免责声明:我尚未认真开始对事业进行调查.我转向Stackoverflow因为我很懒,我希望有人会说"这件事发生在我身上,可能就是这个......".所以,请问,如果这是你从未见过的事情,没有人会陷入这个问题,因为这不公平,因为我自己没有这样做.

好的,一些背景:

  • 通常(可能总是)在第一次查看页面时出现问题
  • 问题不会总是出现,有时只会出现
  • 当页面显示为munged时,如果你刷新它通常重新加载看起来应该
  • 该网站是一个rails应用程序
  • css通过整洁的Smurf Gem传递,它会自动缩小页面上的CSS和Javascript.
  • firefox(linux和winXP)都会出现布局问题
  • 使用":cache => true"选项在生产环境中提供CSS,该选项将所有css文件连接成一个文件

无论如何,我希望以前有人发生这种情况,修复起来非常简单.如果没有,我会去调查并返回解决方案(或请求更多帮助).

提前致谢!

詹姆士.

[编辑]我添加了前两个要点,受到评论和第一个答案的启发[/ edit]

Pee*_*lan 1

我们在使用 HAML 和 SASS 时也遇到过类似的情况,导致 CSS 完全不可用。它只发生在部署时。我们确定它是 Rails 样式表合并和 SASS 生成 CSS 的组合。Sass 尚未完成生成 CSS,当 Rails 尝试将其全部合并在一起时,它是在向应用程序发出第一个请求时完成的。结果,一个损坏的无用 CSS 文件。然后我们偶然发现这篇文章 ,它提供了防止此问题的解决方案。

基于所有这些,我最好的猜测是 Smurf gem 正在尝试在第一个请求时生成您的文件,但 Rails 在完成之前就将其提供了。生成完成后,接下来的每个请求都可以。如果这是问题,那么我知道的唯一解决方案是在第一个请求之前生成文件。当然,这确实假设它以某种方式与部署或应用程序重新启动有关。

同行