Quantcast
Channel: ppedv Team Blog
Viewing all articles
Browse latest Browse all 1198

‘LESS’-CSS is more than you may think…

$
0
0

Wie der Titel schon verrät werden wir in diesem Beitrag einen der CSS-Precompiler mal genauer unter die Lupe nehmen. Einfach gesagt kann man sich das ganze wie eine Feature-Erweiterung betrachten. Wir erhalten die Möglichkeit Variablen, Funktionen uvm. in unseren Zukünftigen CSS-Files zu verwenden und uns somit das Leben enorm erleichtern. Oft hört man den Spruch “Jeder der CSS mag hat doch nicht mehr alle Tassen im Schrank”. Ich für meinen Teil mag CSS, besonders durch das neue VS2013 & die WebEssentials macht das ganze wieder richtig Spaß, stoße jedoch oft an Punkte wo mich die Sehnsucht nach Variablen oder derartigen Methoden packt. Und genau dafür ist LESS zuständig.

Vorab vll. noch wichtig zu erwähnen, im VisualStudio 2013 und 2012 (mit WebEssentials) haben wir bereits einen LESS-Compiler mit integriert und sogar eine super Ansicht über das daraus gerenderte CSS.

clip_image002

Links: LESS Code | Rechts: CSS Output (nicht editierbar)

In diesem Bild sehen wir einen geöffneten LESS File im VisualStudio (2013 oder 2012 + WebEssentials) und dem daraus entstandenem CSS-File. Das praktische an der ganzen Sache ist folgendes, VS erstellt automatisch einen dazugehörigen CSS-File und hält diesen immer up-to-date. Also müssen wir nicht immer z.B. extra einmal einen Build ausführen oder derartiges. Sogar eine minified Version des ganzen wird uns zur Verfügung gestellt. Ohne VS müsste man das ganze on-the-fly kompilieren, für jeden erneuten Request, was nur unnötig Zeit verbrauchen würde.

clip_image004

Variablen

Variablen in LESS lassen sich extrem einfach erstellen und verstehen.

clip_image006

Der Wert welchen wir dieser Variable nun zuweisen ist komplett uns überlassen.

ob Farben…

clip_image008

Schriftarten(strings), Pixelangaben, oder das zuweisen anderen Variablen…

clip_image010

…alles ist möglich. Dadurch lassen sich auch wunderbar sog. Abstraktions-Ebenen erstellen um den Code Wiederverwendbarer zu halten:

clip_image012

 

Nested Rules (CSS inheritance)

Durch Nested Rules können wir bereits verwendete CSS Konstrukte in andere einbinden und dadurch wiederverwenden.

clip_image014

Wie wir sehen werden ‘btn’ als auch ‘btn-default’ ganz normal gerendert. Jedoch enthält btn-default alle Eigenschaften von btn.

Ein gutes Beispiel bzw. guter Anwendungsfall hierfür wäre die allseits bekannte Navigation.

clip_image016

Das ‘&’ bevor der :hover Pseudo-Klasse steht für alle vorhergehenden Selektoren und wird zu ‘ul#nav li a:hover’ gerendert’ was auch wiederum enorm getippe spart.

Problem hierbei, wenn wir die Nested Rule als Art Basis-Klasse verwenden wollen stellen wir bald fest, dass diese immer mit gerendert wird. D.h. es wird unter Umständen unnützer CSS-Code erstellt.

 

Mixins (Funktionen)

Diese Mixins sehen aus, wie ganz normale CSS-Klassen haben aber jedoch noch die Option Parameter mit zu übergeben. Diesen Parametern kann man sogar noch Default-Werte verpassen wenn man das möchte.

clip_image018

Interessant hierbei, das Mixin selbst erzeugt keinerlei CSS und lässt dieses am Ende dadurch schlanker wirken und kann nun beliebig oft verwendet werden.

 

Funktionen & Berechnungen

Ja endlich! Darauf wartet wsl. jeder CSS Tüftler schon sein Leben lang! Endlich sind wir in der Lage einfache bis komplexe Rechenoperationen zu verwenden.

clip_image020

Wie man sieht können wir nicht nur einfache Werte miteinander Addieren, Subtrahiere, Multiplizieren oder Dividieren. Wir können sogar mit HEX-Codes Berechnungen durchführen. Selbst verständlicherweise nur + und –. Hierbei ist anzumerken, dass + oder - #000 immer als 0 gehandhabt wird und + #fff immer in #ffffff (weiß)  endet als auch - #fff immer in #000000 (schwarz) endet.

Dazu kommen noch spezielle Funktionen welche uns den Umgang mit Farben im Allgemeinen erleichtern sollen bzw. die Berechnung dieser.

clip_image022

Lighten und Darken sind denke ich selbst erklärend. Saturate steht für Sättigung. Jede dieser 3 Funktionen bekommt als 2ten Parameter einen % wert übergeben (0-100).

Spin hingegen ‘verschiebt’ die Farbe um einen gewissen Wert auf dem Farbenkreis und kann somit maximal Werte von 0-360 annehmen. Alles was darüber hinausgeht führt zu einer weiteren Umdrehung.

clip_image024

Quelle: Wikipedia - http://de.wikipedia.org/wiki/Farbkreis

 

Fazit

Sieht ganz so aus als ob wir in Zukunft ein neues Spielzeug haben :-)

Generell ist diese CSS-Precompiler-Geschichte eine recht interessante Sache und kann schon mit relativ einfachen Mitteln durchaus effektiv genutzt werden. Jedoch soll an dieser Stelle angemerkt werden, dass dies nur ein minimaler und kurzer Auszug aus der gesamten Funktionalität von LESS sein sollte um einen kleinen Vorgeschmack darauf zugeben und evtl. Lust auf mehr zu machen.

Für alle, die sich die Sache noch intensiver anschauen möchten empfehle ich die offizielle LESS-Website. Auf dieser befindet sich eine Docu mit Beschreibung & Beispielen.


Viewing all articles
Browse latest Browse all 1198

Trending Articles


Vimeo 10.7.1 by Vimeo.com, Inc.


UPDATE SC IDOL: TWO BECOME ONE


KASAMBAHAY BILL IN THE HOUSE


Girasoles para colorear


Presence Quotes – Positive Quotes


EASY COME, EASY GO


Love with Heart Breaking Quotes


Re:Mutton Pies (lleechef)


Ka longiing longsem kaba skhem bad kaba khlain ka pynlong kein ia ka...


Vimeo 10.7.0 by Vimeo.com, Inc.


FORECLOSURE OF REAL ESTATE MORTGAGE


FORTUITOUS EVENT


Pokemon para colorear


Sapos para colorear


Smile Quotes


Letting Go Quotes


Love Song lyrics that marks your Heart


RE: Mutton Pies (frankie241)


Hato lada ym dei namar ka jingpyrshah jong U JJM Nichols Roy (Bah Joy) ngin...


Long Distance Relationship Tagalog Love Quotes