Estoy usando sass y brújula y estoy tratando de crear clases de css para imágenes que coinciden con un patrón dado. El/css resultante destinada sobre todo se ve así:Obteniendo una lista de archivos en sass/compass
.class1 { background-image: url(class1.png); }
.class2 { background-image: url(class2.png); }
Aunque podría ser posible utilizar la funcionalidad de la brújula de sprites (http://compass-style.org/help/tutorials/spriting/) es inconveniente (ya que generará nuevos archivos) en mi caso ya que las imágenes son ya spritesheets ellos mismos.
Así que ser capaz de hacer algo como
@each $clazz in listFiles("images/*") {
.#{$clazz} {
background-image: url('#{$clazz}.png');
}
}
sería grande. ¿Hay alguna manera más o menos fácil de hacerlo?
Eso hace una lista de las rutas completas de archivos para mí (es decir, images/filename1.png). ¿Hay una forma simple de obtener solo el basename para los novatos Ruby? – morewry
@morewry Seguro, solo use el método [File.basename] (http://www.ruby-doc.org/core/File.html#method-c-basename) de Ruby: 'Sass :: Script :: String.new (File.basename (x)) '. – hopper
También puede usar 'Sass :: Script :: String.new (File.basename (x,". * "))' Para obtener solo el nombre de archivo sin extensión. –