【问题标题】:Rails 5 -- "Sass::SyntaxError: Invalid CSS after "Rails 5——“Sass::SyntaxError: Invalid CSS after”
【发布时间】:2017-11-30 20:59:21
【问题描述】:

在 Heroku 上部署 Rails 5 应用程序时,出现以下错误:

  remote: -----> Detecting rake tasks
  remote: -----> Preparing app for Rails asset pipeline
  remote:        Running: rake assets:precompile
  remote:        rake aborted!
  remote:        Sass::SyntaxError: Invalid CSS after "...-weight: normal": expected "{", was ";"
  remote:        (sass):94
  remote:        /tmp/build_8b539749182a61fdc32fe1dcfad0fd07/vendor/bundle/ruby/2.4.0/gems/sass-3.5.3/lib/sass/scss/parser.rb:1278:in `expected'
  remote:        /tmp/build_8b539749182a61fdc32fe1dcfad0fd07/vendor/bundle/ruby/2.4.0/gems/sass-3.5.3/lib/sass/scss/parser.rb:1208:in `expected'
  remote:        /tmp/build_8b539749182a61fdc32fe1dcfad0fd07/vendor/bundle/ruby/2.4.0/gems/sass-3.5.3/lib/sass/scss/parser.rb:1203:in `tok!'
  remote:        /tmp/build_8b539749182a61fdc32fe1dcfad0fd07/vendor/bundle/ruby/2.4.0/gems/sass-3.5.3/lib/sass/scss/parser.rb:677:in `block'
  remote:        /tmp/build_8b539749182a61fdc32fe1dcfad0fd07/vendor/bundle/ruby/2.4.0/gems/sass-3.5.3/lib/sass/scss/parser.rb:747:in `declaration_or_ruleset'
  remote:        /tmp/build_8b539749182a61fdc32fe1dcfad0fd07/vendor/bundle/ruby/2.4.0/gems/sass-3.5.3/lib/sass/scss/parser.rb:697:in `block_child'
  remote:        /tmp/build_8b539749182a61fdc32fe1dcfad0fd07/vendor/bundle/ruby/2.4.0/gems/sass-3.5.3/lib/sass/scss/parser.rb:689:in `block_contents'
  remote:        /tmp/build_8b539749182a61fdc32fe1dcfad0fd07/vendor/bundle/ruby/2.4.0/gems/sass-3.5.3/lib/sass/scss/parser.rb:225:in `directive_body'
  remote:        /tmp/build_8b539749182a61fdc32fe1dcfad0fd07/vendor/bundle/ruby/2.4.0/gems/sass-3.5.3/lib/sass/scss/parser.rb:217:in `directive'
  remote:        /tmp/build_8b539749182a61fdc32fe1dcfad0fd07/vendor/bundle/ruby/2.4.0/gems/sass-3.5.3/lib/sass/scss/parser.rb:696:in `block_child'
  remote:        /tmp/build_8b539749182a61fdc32fe1dcfad0fd07/vendor/bundle/ruby/2.4.0/gems/sass-3.5.3/lib/sass/scss/parser.rb:689:in `block_contents'
  remote:        /tmp/build_8b539749182a61fdc32fe1dcfad0fd07/vendor/bundle/ruby/2.4.0/gems/sass-3.5.3/lib/sass/scss/parser.rb:137:in `stylesheet'

如何解决?

我的项目中没有“sass”文件,只有“css”。

我的 Gemfile 的一部分:

gem "jquery-rails", "~> 4.3"

group :assets do
  gem "sass-rails", "~> 5.0", ">= 5.0.7"
  gem "uglifier", "~> 3.2"
end

更新:

.form-signin {
  max-width: 330px;  // Invalid CSS after "330px": expected expression (e.g. 1px, bold), was ";" (Sass::SyntaxError)
  padding: 15px;
  margin: 0 auto;
}

【问题讨论】:

  • 您的项目中有哪些样式表?你有任何 ui 框架 gem 等吗?你在这里提供的还不够继续
  • @engineersmnky,已更新
  • .scsssass(准确地说是 Sass 3)它的字面意思是“Sassy CSS”,你在这些文件之一
  • @engineersmnky,错字。只有css
  • Sass 是一个预解析器,有效的 css 是有效的 sass 你确定你没有无效的 css,因为显然你有

标签: ruby-on-rails ruby ruby-on-rails-5 asset-pipeline saas


【解决方案1】:

此错误意味着其中一个样式表源中有一些错误的语法。 gems 等中包含的第 3 方样式表可能会出现此类错误。

尝试使用-c 标志运行sass(我的意思是类似sass -c app/assets/stylesheets/**/*.{c,sc,sa}ss)来定位问题...

【讨论】:

  • 哦,等等,其实我的“assets”里只有css文件
猜你喜欢
  • 2014-11-01
  • 2015-07-05
  • 2020-06-06
  • 1970-01-01
  • 2019-04-29
  • 1970-01-01
  • 1970-01-01
  • 2013-01-04
  • 1970-01-01
相关资源
最近更新 更多