2012-01-22 11 views
7

Estoy usando dotLess en un proyecto MVC y no puedo agregar rutas url ('') desde menos archivos importados.MENOS Impedir que se agregue menos url relativo

Tengo el siguiente código de menos:

@myvar : '../../'; 

body 
{ 
    background-image:url('@{myvar}chosen-sprite.png'); 
} 

que genera el siguiente CSS cuando se encuentra en el archivo .less principal, que es la correcta:

body { 
    background-image: url('../../chosen-sprite.png'); 
} 

El problema es que si muevo esto codifique un segundo archivo .less en una carpeta diferente y luego importe ese archivo desde el archivo principal menos. Por ejemplo:

@import 'myFolder/mySecondfile.less 

Ahora el CSS generada tiene el siguiente aspecto:

body { 
    background-image: url('myFolder/../../chosen-sprite.png'); 
} 

¿Hay alguna manera de evitar que "miCarpeta" se muestre allí? Sé que podría escribir la ruta absoluta, pero eso significaría cambiar la dirección cada vez que la raíz del sitio (lo que sucede a menudo durante la prueba).

Gracias

+0

Intenté replicar esto usando lessphp, el puerto php de menos, y funcionó de la manera en que usted describió que le gustaría que funcionara. No lo he probado de la manera en que lo hace lesscss, que el puerto php tiene mal, pero puede valer la pena plantearlo como un error con el autor. – cchana

Respuesta

0

usted debe tratar de cambiar la varible en @myVar: './../../'

8

No estoy seguro de si alguna vez tiene una respuesta para esto, pero se puede escapar de la cadena.

.body { 
    background-image: ~"url('chosen-sprite.png')"; 
} 

Observe la tilde y la cita que rodean todo el argumento de la url del estilo. Si desea leer más al respecto, consulte String Interpolation y Escaping Strings.

+2

Tuve el mismo problema que Jan y probé tu solución con éxito. – jhdrn

+0

Me alegra oír que te ayudó @jhdrn – Josh