Domanda

Ho esaminato la bussola e più aspetto, più mi sembra il modo in cui i CS dovrebbero essere scritti. Come caso di prova, vorrei usarlo in uno dei miei progetti CakePHP. Sfortunatamente, ho qualche problema con la configurazione iniziale. In particolare, con le risorse nel posto giusto e citato correttamente nel CSS compilato.

Sto creando un :stand_alone progetto nel mio /app directory. Bene, questo è quello che io volere da fare. La bussola non sembra che lo piaccia. Nel creare il progetto, l'ho detto dove mettere il CSS, le immagini e JS e quelle risorse, in effetti, arrivano alla directory corretta. Sfortunatamente, poiché non sto creando la directory nel Webroot, le risorse vengono fatte riferimento in modo errato quando compilate.

Sto creando il progetto della bussola nel mio cakephp app/ directory con questo comando:

$ compass -f blueprint --sass-dir sass --css-dir webroot/css/ --images-dir webroot/img/ --javascripts-dir webroot/js/ --output-style compact .

Il CSS compilato, tuttavia, vuole fare riferimento a Blueprint showgrid.png Immagine come:

url('/webroot/img/grid.png?1264969358')

Suppongo che questo sia un risultato abbastanza prevedibile, ma non riesco a capire come far riferimento al CSS compilato /img/grid.png?whatever sentiero. È anche possibile? Sono costretto a creare il mio progetto di bussola direttamente nel mio Webroot?

Grazie.

AGGIORNARE

Contenuto del mio config.rb file:

# Require any additional compass plugins here.
project_type = :stand_alone
# Set this to the root of your project when deployed:
http_path = "/"
css_dir = "webroot/css"
sass_dir = "sass"
images_dir = "webroot/img"
http_images_path = "/img"
javascripts_dir = "webroot/js"
output_style = :compact
È stato utile?

Soluzione

Esecuzione di Compass V0.10 e utilizzando la seguente configurazione:

# Require any additional compass plugins here.
# Set this to the root of your project when deployed:
http_path = "/"
sass_dir = "sass"
css_dir = "webroot/css"
images_dir = "webroot/images"
javascripts_dir = "webroot/js"
http_stylesheets_dir = "css"
http_javascripts_dir = 'js'
http_images_dir = 'images'
# To enable relative paths to assets via compass helper functions. Uncomment:
# relative_assets = true

Fornisce i risultati previsti.

Compass v0.10 sta per essere rilasciata, puoi installarlo con:

(sudo) gem install compass --pre

Per creare un progetto utilizzando questa configurazione:

  1. Crea una directory di progetto
  2. Salva la configurazione in config.rb nella directory del progetto.
  3. Dall'interno della directory del progetto esegui il comando: compass install blueprint

Altri suggerimenti

Rails e altri framework hanno i file SASS e la configurazione nella radice del progetto, al di fuori del pubblico Web. Anche un progetto autonomo dovrebbe funzionare bene in questo modo.

Stai usando image_url() per quando fai riferimento a un'immagine?

Nel tuo compass.config file è possibile impostare il http_images_path Se è diverso dal percorso della directory. Vedere il pagina di configurazione nella wiki per maggiori dettagli.

Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top