Chris Coyier hat einen großartigen Überblick über SASS vs LESS bei css-tricks.com . Es ist auf jeden Fall eine Lektüre wert.
Einige Ihrer spezifischen Fragen:
Gemeinschaft
Ich arbeite ausschließlich mit SASS / Compass, daher kenne ich die LESS-Community nicht genau, aber ich habe die SASS-Community auch nicht wirklich gebraucht. Ihre Dokumentation ist fantastisch und hat alle Probleme gelöst, auf die ich bisher gestoßen bin.
Für das, was es wert ist, sind hier die SASS vs LESS-Statistiken, die Chris in seinem Beitrag hat, den ich für aktuelle Zahlen aktualisiert habe:
Anzahl offener Fragen zu WENIGER: 121
Anzahl offener Fragen zu Sass: 87
Ausstehende Pull-Requests für LESS: 13
Ausstehende Pull-Requests für Sass: 8
Anzahl der Commits im letzten Monat in WENIGER: 49
Anzahl der Commits im letzten Monat in Sass: 7
Zu beachten ist, dass diese Zahlen zum Zeitpunkt von Chris 'Schreiben im Mai 2012 grob umgedreht wurden. Dies sagt mir, dass sie beide in Bezug auf die Entwicklungstätigkeit ziemlich gleich sind.
Reife
Technisch gesehen ist Sass älter. Es erschien im Jahr 2007, während LESS im Jahr 2009 herauskam. Trotzdem haben die Vergleiche, die ich gesehen habe, beide in Bezug auf Funktionen und so weiter auf den gleichen Reifegrad gebracht.
Beide haben auch Frameworks, die ihnen mehr Werkzeuge bieten. WENIGER hat weniger Framework und Centage (zusätzlich wird der Twitter-Bootstrap mit WENIGER erstellt). Sass hat Kompass, Schwerkraft und Susy. Beide haben wahrscheinlich mehr, wenn Sie nach ihnen graben, aber das sind einige der ersten, die auftauchen, wenn Sie suchen.
Gibt es also echte Unterschiede?
Wenn es darum geht, es zu schreiben, nicht wirklich. Wenn Sie in Sass die CSS-ähnliche SCSS-Syntax verwenden (anstelle der eher Python-ähnlichen SASS-Syntax), weisen Sie nur die typischen geringfügigen Syntaxunterschiede ( @
vs $
) auf, die jedoch größtenteils im Grunde gleich sind.
Die beiden größten Unterschiede bei der Codierung, die ich festgestellt habe, waren: a) wie sie beim Rechnen mit Einheiten umgehen und b) wie sie mit der Vererbung umgehen. Wenn so etwas gegeben 20px + 2em
wird LESS die zweite Einheit fallen und nehmen Sie das erste (yeilding bedeuten 22px
), während Sass wird einen Fehler werfen (im Grunde, Typ Mismatch). Bei der Vererbung wird es von LESS wie ein Mixin behandelt (ich kann es nicht wirklich gut erklären, daher finden Sie weitere Informationen im Abschnitt zur Inhertanz in diesem Tuts + -Artikel ).
Ob einer der anderen überlegen ist, hängt davon ab, wie Sie es vorziehen, mit Dingen umzugehen.
Der andere größte Unterschied, den ich kenne, ist, wie und wo jeder standardmäßig kompiliert wird. Sass verwendet Ruby und kompiliert auf dem Server, sodass Sie die kompilierte CSS-Datei speichern und an den Client senden können. WENIGER hingegen verwendet standardmäßig das Skript less.js, um das CSS im laufenden Betrieb zu kompilieren. Mit der Verwendung von Node.js kann LESS jedoch auf der Serverseite auf dieselbe Weise kompiliert werden wie Sass.
Welcher?
Also, wenn sie im Grunde gleich sind, welche sollten Sie verwenden? Nun, es sei denn, Sie lieben die Python-ähnliche SASS-Syntax wirklich, oder Sie glauben wirklich, dass die clientseitige Kompilierung der richtige Weg ist, oder Sie bevorzugen den Aufruf einer Vererbung gegenüber der anderen habe schon) Ruby oder Node.js installiert.
--debug-info
einiger Zeit nicht standardmäßige "Quellkarten" mit und Zeilenkommentare für Firebug und Chrome, bevor die Standardkarten herauskommen) und Platzhalter (im Grunde genommen @extend, ohne die Klasse zu schreiben, von der erweitert werden soll) sind in der neuesten Version.Ich glaube, dass Ihre Wahl zumindest ein bisschen davon abhängt, was Sie tun oder verwenden. Ich arbeite hauptsächlich mit Rails und es unterstützt Sass für sein CSS bis zu dem Punkt, dass es beim Erstellen eines neuen Projekts aktiv einbezogen wird. Wenn Sie so etwas wie den allseits beliebten Bootstrap verwenden möchten, der standardmäßig Less verwendet, müssen Sie sich keine Sorgen machen , da es viele beliebte Juwelen wie bootstrap-sass gibt, mit denen Sie ihn in Ihrem Projekt verwenden können.
Dies ist streng anekdotisch, aber jeder Eindruck, den ich persönlich hatte, ist, dass Sass eine größere Community und mehr Unterstützung hat, und ehrlich gesagt ist die offizielle Dokumentation für Sass viel detaillierter und umfangreicher als die von Less (Erhöhung der Schriftgröße und Auffüllung für alles) macht kein längeres stück text). Wenn Sie auf Einzelheiten eingehen möchten, obwohl ich mit Less nicht ganz vertraut bin und mich ausschließlich auf beide Sprachen konzentriere, ist Sass die einzige mit Selektorvererbung. Ich bin sicher, dass es andere Unterschiede gibt, auf die die Leute eingehen können.
Am Ende hat jeder seine Vorlieben und wenn Sie feststellen, dass einer besser zu Ihnen passt als der andere, sollten Sie ihn auf jeden Fall verwenden, wenn er das kann, wozu Sie ihn brauchen. In meiner Zeit mit Sass habe ich jedoch die Klarheit und Effektivität sehr genossen, insbesondere in Anbetracht der Tatsache, dass ich im Rails-Bereich bin.
quelle
Ich bin mir nicht sicher, ob Less etwas Vergleichbares hat, aber einer der Hauptvorteile von Sass ist die Compass- Bibliothek, die Ihnen viele gängige CSS-Idiome, Standard-Hacks für ältere Browser und CSS3-Funktionalitäten bietet, ohne dass ein Browser-Präfix erforderlich ist, um dies nicht zu tun Erwähnen Sie die automatische Generierung von CSS für Sprite-Bilder.
Ein weiterer Vorteil - zumindest für mich - ist, dass Sass eine Python-ähnliche Syntax zulässt, die ich viel besser lesbar finde.
quelle