10

Im пытается прекомпилировать активы для производства. Если я не включу файлы начальной загрузки и шрифта в качестве статических файлов (или хоста из CDN), sass-rails не удастся при попытке скомпилировать активы на производстве. Моя Gemfile выглядит следующим образом:Невозможно предварительно скомпилировать активы Rails 4 bootstrap-sass DXImageTransform error

# Default asset gems 
gem 'coffee-rails', '~> 4.0.0' 
gem 'sass-rails' , '~> 4.0.3' 
gem 'uglifier' , '>= 1.3.0' 

# Default gems 
gem 'jbuilder', '~> 2.0' 
gem 'sdoc' , '~> 0.4.0', group: :doc 

# Added gems 
gem 'carrierwave' 
gem 'pg' 
gem 'turbolinks' 
gem 'restforce' 

# Asset gems 
gem 'jquery-rails' 
gem 'autoprefixer-rails' 
gem 'bootstrap-sass' 
gem 'font-awesome-sass' 
gem 'handlebars_assets' 
gem 'iconv' 

Когда я пытаюсь скомпилировать активов я получаю следующее сообщение об ошибке:

➜ stylesheets git:(master) ✗ rake assets:precompile 
(in /home/ubuntu/spice-conduit) 
rake aborted! 
Sass::SyntaxError: Invalid CSS after " filter: progid": expected ";", was ": DXImageTransf..." 
    (in /home/ubuntu/spice-conduit/app/assets/stylesheets/application.css) 
(sass):3566 
/home/ubuntu/.rvm/gems/ruby-2.1.3/gems/sass-3.2.19/lib/sass/scss/parser.rb:1147:in `expected' 
/home/ubuntu/.rvm/gems/ruby-2.1.3/gems/sass-3.2.19/lib/sass/scss/parser.rb:1085:in `expected' 
/home/ubuntu/.rvm/gems/ruby-2.1.3/gems/sass-3.2.19/lib/sass/scss/parser.rb:1080:in `tok!' 
/home/ubuntu/.rvm/gems/ruby-2.1.3/gems/sass-3.2.19/lib/sass/scss/parser.rb:586:in `block in declaration_or_ruleset' 
/home/ubuntu/.rvm/gems/ruby-2.1.3/gems/sass-3.2.19/lib/sass/scss/parser.rb:1123:in `call' 
/home/ubuntu/.rvm/gems/ruby-2.1.3/gems/sass-3.2.19/lib/sass/scss/parser.rb:1123:in `rethrow' 
/home/ubuntu/.rvm/gems/ruby-2.1.3/gems/sass-3.2.19/lib/sass/scss/parser.rb:592:in `declaration_or_ruleset' 
/home/ubuntu/.rvm/gems/ruby-2.1.3/gems/sass-3.2.19/lib/sass/scss/parser.rb:554:in `block_child' 
/home/ubuntu/.rvm/gems/ruby-2.1.3/gems/sass-3.2.19/lib/sass/scss/parser.rb:546:in `block_contents' 
/home/ubuntu/.rvm/gems/ruby-2.1.3/gems/sass-3.2.19/lib/sass/scss/parser.rb:535:in `block' 
/home/ubuntu/.rvm/gems/ruby-2.1.3/gems/sass-3.2.19/lib/sass/scss/parser.rb:529:in `ruleset' 

app.css файл:

* You're free to add application-wide styles to this file and they'll appear at the top of the 
* compiled file, but it's generally better to create a new file per style scope. 
* 
*= require jquery-ui 
*= require sweetalert 
*= require vendors 
*= require_tree . 
*/ 

Мой файл СКС:

@import "font-awesome-sprockets"; 
@import "font-awesome"; 
@import "bootstrap-sprockets"; 
@import "bootstrap"; 

Я видел эту проблему ted здесь: https://github.com/rails/sass-rails/issues/37 но эта проблема несколько лет.

ответ

13

Удалить пустое пространство между progid и DXImageTransform.Microsoft.gradient.

для напр.,

OLD СИНТАКСИС

filter: progid: DXImageTransform.Microsoft.gradient(startColorstr='#7adddd', endColorstr='#39cccc', GradientType=0) !important;

NEW СИНТАКСИС

filter: progid:DXImageTransform.Microsoft.gradient(startColorstr='#7adddd', endColorstr='#39cccc', GradientType=0) !important;

Вы можете увидеть в новом синтаксисе, я удалил лишний пространства между progid и DXImageTransform.Microsoft.gradient().

+0

Я не могу поверить, что проблема в белом пространстве. Благодаря! –

+0

Ты потрясающий! –

+0

Спасибо тонну !!!! – Kop4lyf