2013-04-07 11 views
15

sto cercando di utilizzare il filtro mixin in questo modo in SCSS:Come utilizzare il mixin del filtro della bussola?

a { 
    @include filter(grayscale(100%)); 
} 

Ma quando compilo, ho ottenuto questo errore:

Undefined mixin 'filter'. 

sto utilizzando la versione più recente di questo gioiello con Quadro di rotaie.

http://compass-style.org/reference/compass/css3/filter/

+1

Ti sei ricordato di importare il file in cui è definito il mixin? '@import" bussola/css3/filtro "' – cimmanon

+1

@cimmanon Yep! Altri mixin funzionano bene ... :) –

risposta

1

Secondo Compass documentation questo file può essere importato utilizzando: @import "compass/css3/filter" nella parte superiore del file di sass.

E poi nel sass file che si può usare come

filter($filter-1, $filter-2, $filter-3, $filter-4, $filter-5, $filter-6, $filter-7, $filter-8, $filter-9, $filter-10) 
20

SASS Esempio

@import 'compass/css3/filter' 

.filtered 
    @include filter(grayscale(50%)) 
    @include filter(blur(2px)) 
+0

Attenzione: non tutto/probabilmente nessun firefox supporta i filtri in scala di grigi. (Stato: giugno 2014) Per un fallback in scala di grigi di firefox: vedere http://stackoverflow.com/questions/12173130/css-filter-not-working-in-firefox –

+2

Per applicare effettivamente più filtri è necessario passarli tutti in uno '@include filter()'. L'utilizzo di due @includes produrrà più proprietà di filtro e l'ultimo incluso in uso sovrascriverà quelli precedenti. –

10

è necessario importare filtro bussola prima.

Per utilizzare più filtri mettere tutti i filtri all'interno() senza virgole

@import 'compass/css3/filter' 

// multiple calls like this: 
.filtered { 
    @include filter(blur(4px) brightness(1.3) saturate(1.5)); 
} 
Problemi correlati