Компас в стандартной настройке веб-приложения yoman неправильно отображает линейный градиент

У меня есть ванильное веб-приложение, сгенерированное с помощью yo webapp из Yeoman, и я использовал опцию, чтобы использовать Compass с SASS. Моя локальная версия Compass — 0.12.2, на данный момент последняя. Затем я добавил что-то подобное в свой main.scss, дословно взятый из градиентов компаса. документация:

@include background-image(linear-gradient(left top, white, #dddddd));

Однако это отображается в CSS без какой-либо предварительной обработки функции линейного градиента:

background-image(linear-gradient(left top, #ffffff, #dddddd));

Снимок экрана:

скриншот:

Что я делаю не так, что пример из документации не работает?


person Steven    schedule 21.02.2014    source источник


Ответы (2)


Я углубился в исходники, а именно в lib/compass/sass_extensions/functions/gradient_support.rb, и нашел функцию примеси, определенную как linear_gradient с подчеркиванием. Я попытался использовать следующее в своем SCSS, и это сработало:

@include background-image(linear_gradient(left top, white, #dddddd));

РЕДАКТИРОВАТЬ: После дальнейшего изучения это не работает полностью. Он по-прежнему выдает недопустимый background-image: linear-gradient(left top, #ffffff, #dddddd);.

person Steven    schedule 21.02.2014
comment
Дефисы и тире взаимозаменяемы в Sass для функций, примесей и имен переменных. Какая-то устаревшая вещь, которую не стоило выбрасывать. - person cimmanon; 21.02.2014

Та же проблема здесь.

Свежая установка с Yeoman Webapp, следуя документации по линейным градиентам от Compass. Я получаю тот же результат - Но обратите внимание: происходит предварительная обработка, я думаю, что причина, по которой мы не видим префиксов, заключается в том, что самые последние браузеры (включая Chrome) не требуют этого.. очевидно http://caniuse.com/#feat=css-gradients

К сожалению, на самом деле это не работает без префикса для меня.

person Danny Chambers    schedule 14.03.2014