Anzeige
Anzeige
News

Sass vs. Less: So findest du den richtigen Präprozessor für dich

Vielleicht bist du dir noch nicht ganz sicher, welchen Präprozessor du nutzen willst. Sass, Less oder doch lieber einen Dritten? In diesem Artikel zeigen wir dir kurz und knapp die wichtigsten Unterschiede zwischen Sass und Less.

Von Mario Janschitz
4 Min.
Artikel merken
Anzeige
Anzeige

Warum gibt es Präprozessoren wie Sass und Less?

CSS ist eine sehr einfache Sprache, um hauptsächlich HTML zu formatieren. Diese Einfachheit ist die Ursache, warum CSS relativ viele Features vermissen lässt. Sogenannte Präprozessoren erweitern CSS mit verschiedensten Features und Funktionen, um die Arbeit mit CSS zu beschleunigen.

Anzeige
Anzeige

Zu den Funktionen von CSS-Präprozessoren gehören unter anderem: Variablen, Verschachtelung, Mixins, Mathematische Funktionen und Manipulation von Farben. Sowohl Less als auch Sass bieten ganz ähnliche Funktionen, allerdings unterscheidet sich die Syntax – und ist damit wohl der Hauptgrund, warum sich Entwickler entweder für Sass oder Less entscheiden.

Das kann Sass

Knapp zehn Jahre gibt es „Syntactically Awesome Stylesheets“ – also Sass – bereits und ist der wohl bekannteste Präprozessor überhaupt. Obwohl Sass schon einige Jahre auf dem Buckel hat, wurde erst vor kurzem die Version 3.4 veröffentlicht. Die Grundidee hinter der Entwicklung von Sass war es, die Arbeit mit CSS einfacher zu machen, aber gleichzeitig auch den Funktionsumfang zu erhöhen. Daher wurden in Sass Klammern sowie Semikolons entfernt. Kann Schreibarbeit sparen – muss es aber nicht: Auto-Complete sei Dank.

Anzeige
Anzeige

Der größte Vorteil von Sass, neben der Erweiterung von CSS, ist, dass die Sprache von mächtigen Frameworks flankiert wird. Bourbon bietet neben Grids und einzelnen Komponenten sehr viel, was das Entwickler-Herz höher schlägen lässt.

Anzeige
Anzeige

Auch das CSS-Authoring-Framework Compass nutzt Sass und wird von LinkedIn sowie von Sencha eingesetzt. Wer also lieber mit einem komfortablen UI anstatt dem Terminal arbeiten möchte, der sollte sich Compass ansehen. Auch das CSS-Framework Zurb Foundation setzt auf Sass.

Das ist aber noch nicht alles: Mit SCSS existiert eine neue Syntax, die sich näher an der Vanilla-CSS-Syntax orientiert. Diese beschränkt sich im Gegensatz zu Sass nicht auf das Einrücken von Elementen, sondern verfolgt den selben Ansatz zur Strukturierung wie Plain-CSS, nämlich geschweifte Klammern. Der große Vorteil von SCSS ist, dass man sich keine neue Syntax aneigenen muss. Denn SCSS schreibt sich wie CSS. Aus meiner Perspektive ist das aber kein Vorteil, denn Sass lässt sich einfacher und schneller schreiben als SCSS – außer ihr nutzt natürlich VIM.

Anzeige
Anzeige

Hier der Unterschied zwischen Sass und SCSS:

$blablubb: #333

.navigation
  border-color: $blablubb
  color: darken($blablubb, 5%)

In SCSS sieht der selbe Code so aus:

$blablubb: #333;

.navigation {
  border-color: $blablubb;
  color: darken($blablubb, 5%);
}

Weiterführend kann ich euch die Sass-Dokumentation sowie dieses Video von DevTips empfehlen:

Anzeige
Anzeige

Das kann Less

Kurze Zeit nachdem Sass veröffentlicht wurde, erblickte 2009 der Präprozessor „Less“ das Licht der Entwicklerwelt. Less ist stark von Sass beeinflußt worden, allerdings war es hier das Ziel, so nah wie möglich an Vanilla-CSS zu bleiben und nur den Funktionsumfang von CSS zu erweitern. Damals wurde Less noch mit Ruby genutzt – der Präprozessor wurde aber später völlig neu implementiert und nutzt heute JavaScript. Einer der bekanntesten Vertreter von Less ist wohl das Framework Twitter Bootstrap.

Variablen werden in Sass mit einem $-Zeichen dargestellt, Less nutzt dagegen das @-Zeichen. Das ist natürlich etwas verwirrend, denn Sass nutzt wiederum das @-Zeichen für Mixins. Wenn ihr euch tiefer mit Less beschäftigen wollt, dann kann ich euch die Dokumentation empfehlen.

Um euch einen direkten Überblick bezüglich der Schreibweise von Less beziehungsweise Sass zu ermöglichen, kann ich euch außerdem diesen Link zu Less und Sass empfehlen.

Anzeige
Anzeige

Fazit: Viel lernen du musst, junger Padawan

„Tools beschleunigen eure Arbeit, sie machen sie aber nicht besser.“

Bevor ihr euch aber um Sass, Less, Stylus oder Build-Tools wie Gulp oder Grunt Gedanken macht, müsst ihr zuerst grundsolide in HTML, CSS und JavaScript schreiben können – es hilft nichts, wenn ihr coole Tools nutzen wollt und nicht zu 100 Prozent gutes CSS, HTML und JavaScript schreiben könnt.

Persönlich ziehe ich Sass Less und SCSS vor. Ich finde der Code ist dadurch einfacher zu warten, und ich bin vor allem schneller, wenn es um kleinere Änderungen am Code geht.

Ich hasse es einfach sechs Klammern neu zu positionieren, nur weil ich eine minimale Änderungen durchführen möchte. Sass erweist sich für meinen Workflow einfach als die bessere Möglichkeit Präprozessoren zu nutzen. Vergesst aber nicht, dass CSS bereits gewisse Funktionen von Präprozessoren (bald) nativ unterstützt und Postprozessoren wie Myth einen alternativen Weg gehen.

Anzeige
Anzeige

Wenn ihr eure Entscheidung an den Frameworks festmachen wollt: SCSS sowie Less akzeptieren reines CSS als valide Eingabe. Wenn ihr eure Entscheidung daran festmachen wollt, welcher Präprozessor von den meisten Agenturen eingesetzt wird, kann ich euch sagen: Es gab nach dem Auftauchen von Less einen regelrechten Hype um Less, da keine neue Syntax (die draus besteht, keine Klammern und Semikolons zu schreiben) erlernt werden musste. Für mich persönlich war das aber noch nie ein Grund mich gegen Sass zu entscheiden. Nach dem Less-Hype sehe ich inzwischen – auch im internationalen Umfeld – immer wieder mehr Sass als Less.

Ich habe meine Entscheidung damals getroffen, in dem ich eine vorhandene CSS-Datei konvertiert und dann damit weiter gearbeitet habe. Ein Demo-Projekt mit zwei Präprozessoren: Sass war überzeugender.

Das Wichtigste: Tools beschleunigen eure Arbeit, sie machen sie aber nicht besser. Ich hoffe dieser Artikel hilft euch bei eurer Entscheidung.

Anzeige
Anzeige

Welchen Präprozessor nutzt ihr?

Mehr zu diesem Thema
Fast fertig!

Bitte klicke auf den Link in der Bestätigungsmail, um deine Anmeldung abzuschließen.

Du willst noch weitere Infos zum Newsletter? Jetzt mehr erfahren

Anzeige
Anzeige
8 Kommentare
Bitte beachte unsere Community-Richtlinien

Wir freuen uns über kontroverse Diskussionen, die gerne auch mal hitzig geführt werden dürfen. Beleidigende, grob anstößige, rassistische und strafrechtlich relevante Äußerungen und Beiträge tolerieren wir nicht. Bitte achte darauf, dass du keine Texte veröffentlichst, für die du keine ausdrückliche Erlaubnis des Urhebers hast. Ebenfalls nicht erlaubt ist der Missbrauch der Webangebote unter t3n.de als Werbeplattform. Die Nennung von Produktnamen, Herstellern, Dienstleistern und Websites ist nur dann zulässig, wenn damit nicht vorrangig der Zweck der Werbung verfolgt wird. Wir behalten uns vor, Beiträge, die diese Regeln verletzen, zu löschen und Accounts zeitweilig oder auf Dauer zu sperren.

Trotz all dieser notwendigen Regeln: Diskutiere kontrovers, sage anderen deine Meinung, trage mit weiterführenden Informationen zum Wissensaustausch bei, aber bleibe dabei fair und respektiere die Meinung anderer. Wir wünschen Dir viel Spaß mit den Webangeboten von t3n und freuen uns auf spannende Beiträge.

Dein t3n-Team

Jay

„CSS ist eine sehr einfache >Programmiersprache<". Da stellen sich die Nackenhaare bei mir auf.

Antworten
Nico

Da muss ich Jay zustimmen

Antworten
Mario Janschitz

@Jay @Nico
Das passiert, wenn das Proof-Reading keine Rücksprache mit dem Autor hält ;)
Habe den Fehler korrigiert. Danke für den Hinweis!

Antworten
Dan

CSS = Programmiersprache? *hust*

Antworten
Mario Janschitz

Nein, ist CSS nicht. Aber siehe mein vorheriges Kommentar.

Antworten
andreasgruenh

Da CSS3 Touring-Vollständig ist (http://stackoverflow.com/questions/2497146/is-css-turing-complete), und Touring-Vollständigkeit eine Eigenschaft von Programmiersprachen ist, ist CSS3 Formal gesehen eine Programmiersprache :>

Falk

Bootstrap schwenkt in der Version 4 übrigens auch von Less zu Sass. Wobei beides verwendet werden kann (auch in Version 3).

Antworten
Ralf Hortt

Wie immer in solchen Beiträgen fehlt stylus. Der für mich bessere Präprozessor.

Antworten

Melde dich mit deinem t3n Account an oder fülle die unteren Felder aus.

Bitte schalte deinen Adblocker für t3n.de aus!
Hallo und herzlich willkommen bei t3n!

Bitte schalte deinen Adblocker für t3n.de aus, um diesen Artikel zu lesen.

Wir sind ein unabhängiger Publisher mit einem Team von mehr als 75 fantastischen Menschen, aber ohne riesigen Konzern im Rücken. Banner und ähnliche Werbemittel sind für unsere Finanzierung sehr wichtig.

Schon jetzt und im Namen der gesamten t3n-Crew: vielen Dank für deine Unterstützung! 🙌

Deine t3n-Crew

Anleitung zur Deaktivierung
Artikel merken

Bitte melde dich an, um diesen Artikel in deiner persönlichen Merkliste auf t3n zu speichern.

Jetzt registrieren und merken

Du hast schon einen t3n-Account? Hier anmelden

oder
Auf Mastodon teilen

Gib die URL deiner Mastodon-Instanz ein, um den Artikel zu teilen.

Anzeige
Anzeige