Verwenden des gleichen Compass Sprites in verschiedenen Stylesheets

8

Ich verwende Compass, um CSS-Sprites zu generieren.

Ich habe einen Weg gefunden, ein Sprite einmal zu definieren und es in verschiedenen .scss-Dateien zu verwenden, aber ich bin mir nicht sicher, ob das die richtige Lösung ist.

Der beste Weg, den ich bis jetzt finden konnte, ist:

  • Erstellen Sie eine _variables.scss partielle Datei
  • Definieren Sie das Sprite innerhalb der _variables.scss partiellen Datei
  • Importieren Sie _variables.scss partially in jede .scss-Datei

Beispiel

_variables.scss Datei:

%Vor%

firstPage.scss-Datei:

%Vor%

secondPage.scss-Datei:

%Vor%

Und das funktioniert, aber ...

Das Problem ist, dass jedes Mal, wenn Compass die scss-Dateien kompiliert (firstPage.scss, secondPage.scss), die partials _variables.scss liest und dann alle Bilder liest und versucht, das Sprite jedes Mal zu erzeugen.

Das Ergebnis ist, dass der compile -Prozess in diesem Fall endet:

%Vor%

Und das ist extrem langsam, weil ich viele Seiten und viele Dateien im siteSprite Bildordner habe.

Wie kann ich dieses Problem vermeiden?

    
verlok 14.04.2013, 07:26
quelle

1 Antwort

2

Ich werde erklären, wie ich Kompass-Sprites benutze, und hoffentlich wird das auch für dich hilfreich sein. Ich erstelle normalerweise eine _base.scss-Teildatei, in die ich alle generischen @ imports und @ includes plus irgendeinen generischen css-Code für mein Projekt lege. In der _base.scss füge ich auch den folgenden sprites-spezifischen Code hinzu (angenommen, dass der Ordner, in dem ich meine Icons habe, "icon" heißt und dass meine Icons die Erweiterung .png haben):

%Vor%

Diese _base.scss ist die erste Datei, die ich in eine * .css.scss-Datei (das Äquivalent von "firstPage.scss" und "firstPage.scss") meines Projekts importiere.

Nun, um eines dieser Sprites in einem div zu verwenden, mache ich das einfach:

%Vor%

Dabei steht "myicon" für den Namen einer .png-Datei im Ordner "icon".

Dieses Kompass-Tutorial ist eigentlich sehr hilfreich, also sollten Sie es sich ansehen.

>

Wenn Sie befürchten, dass einige Dateien mehr als einmal importiert werden, können Sie versuchen, das Plugin Kompass-Einmal importieren .

    
user3170356 13.02.2014 13:24
quelle