【问题标题】:Rake assets:precompile aborts after CSS3 animationRake 资产:CSS3 动画后预编译中止
【发布时间】:2012-02-22 16:03:50
【问题描述】:

两个问题: 1) 如何获得 rake assets:precompile 以使用我的 application.css 中的 CSS3 动画?

在 application.css 中:

@-webkit-keyframes greenPulse {
from { background-color: #749a02; -webkit-box-shadow:: 0 0 9px #333; }
50% { background-color: #91bd09; -webkit-box-shadow:: 0 0 18px #91bd09; }
to { background-color: #749a02; -webkit-box-shadow:: 0 0 9px #333; }
}

错误:

rake aborted!
Invalid CSS after "...kit-box-shadow:": expected expression (e.g. 1px, bold), was ": 0 0 9px #333; }"

EDIT 这可以通过将 :: 更改为 : 来解决。不过,我仍然需要这个问题的帮助:

2) 我怎样才能避免必须做 rake assets:precompile 每次我只想在开发中更新我的 CSS 页面?

【问题讨论】:

  • 资产管道不是仅在生产中可用吗?
  • @Raffaele 也许是这样,但是为什么我的 CSS 页面只有在我执行 rake assets:precompile 时才会更新?
  • 会不会是 webrick 的问题?您是否尝试过重新启动它?只是猜测..
  • 另外,在属性名称之后,那些双列是什么意思?
  • @Raffaele 是的,我已经重新启动了 webrick 哈哈。绝对是资产问题,而不是服务器重启。至于 ::,我认为这是问题所在。我早些时候修复了它,但我仍然需要第二部分的答案......不过我可能应该更新我的问题。

标签: ruby-on-rails css ruby-on-rails-3.1 rake


【解决方案1】:

您需要在开发模式下重新编译资产的原因是 Rails 会在您更改 app/assets 下的内容之前加载您的预编译资产。

通常,您根本不需要在开发模式下进行预编译:只需确保您的 public/assets 文件夹为空即可。您可以使用rake assets:clean 摆脱它们。那么您的开发变更应该立即被采纳。

【讨论】:

  • 实际上,有趣的是,真正的问题在于 Google Chrome 缓存我的 CSS 页面。甚至不是 Rails 问题!
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2016-03-31
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2012-07-11
  • 2012-04-23
相关资源
最近更新 更多