De manera predeterminada, Sass no convertirá los valores de color literales de sus valores hexadecimales a menos que esté forzando a Sass a interpolar con #{}
o una variable.
El uso de la interpolación devolverá la versión "to_sass" del valor que le interese. Por ejemplo, #{ #fff }
se interpolará a "blanco". Esto también ocurre durante las sustituciones de variables: los literales de color se traducen en objetos de Color cuando se usan como variables, luego se "to_sass" ed en su hoja de estilos.
Además, puede especificar la opción de estilo compressed
, que devolverá la versión de menor longitud de bytes (es decir, red
en lugar de #f00
). Como white
tiene 5 caracteres de largo y #fff
es solo 4, su regla reemplazará con #fff
en su lugar.
No hay manera de desactivar la conversión de nombre de color HTML4 inverso cuando se usan variables. Como solución temporal, puede declarar las variables de color como una cadena y luego usarlas en estilos con la función unquote()
.
$color: '#fff';
.white { color: unquote($color) }
Sass no hace esto para mí .. Seguro Sass es su problema? – Ben
Esto no ocurre si solo hacemos fondo: #FFF, sin la imagen. ¿Lo intentaste? ¿Qué estilo de salida estás usando? –
Encontré esta página porque ms-filter no reconoce short-hex y 'rake assets: precompile' siempre me da un corto hexadecimal. Hay una función 'ie-hex-str' que la gente no conoce. Google eso. –