less, mint css preprocessor

36
LESS Király Levente [email protected]

Upload: levente-kiraly

Post on 24-May-2015

794 views

Category:

Technology


3 download

DESCRIPTION

LESS, mint css preprocessor. Röviden az előnyeiről, képességeiről és használatáról.

TRANSCRIPT

Page 1: LESS, mint css preprocessor

LESS

Király Levente

[email protected]

Page 2: LESS, mint css preprocessor

Mi a LESS? Egy css preprocessor (szebben: előfeldolgozó), amely kiegészíti a css-t.

• kapunk változókat (most már ugyan jött az ötlet, hogy legyenek natív változók (http://dev.w3.org/csswg/css-

variables/) a cssben, de az még csak draft [chrome dev buildbe már implementálták])

• műveleteket tudunk végezni cssen belül (igen, most már ez is van a css-ben, calc(http://www.w3.org/TR/css3-

values/#calc) néven fut)

• beépített függvényeket

• mixineket (többször felhasználható valamik), igazából classnak felel meg a legjobban.

Page 3: LESS, mint css preprocessor

Előnyei

• gyors fejlesztés (nested rules)

• objektum orientált fejlesztési szemlélet

• átláthatóbb kód (ez hülyeség, fejlesztőn múlik)

Page 4: LESS, mint css preprocessor

Hátrányai

• mindenképpen fordítani kell a kódot ez történhet kliens oldalon(js), szerver oldalon (jelen esetben php), vagy fejlesztés után egyből

• annyira nem okos, mint társa, a sass (bizonyos műveleteknél elhasal)

• ha nem ért hozzá valaki, nem nagyon fogja tudni bővíteni a kódot (na jó, de, mivel tök egyszerű, könnyen átlátható)

Page 5: LESS, mint css preprocessor

VÁLTOZÓK

Page 6: LESS, mint css preprocessor

Változók

Abban az esetben, ha egy változó értékét nem definiálod, üres lesz a property értéke.

Page 7: LESS, mint css preprocessor

Globális változó

Bárhol tudsz rá hivatkozni a forráskódban

Page 8: LESS, mint css preprocessor

Scoped /privát/ változó

csak az adott ruleon belül éred el

Page 9: LESS, mint css preprocessor

Változók használata

Vicces, de ennek a neve: normális használat

Page 10: LESS, mint css preprocessor

Változók használata

Beágyazás további karakterek közé

Page 11: LESS, mint css preprocessor

Escapelés

leginkább ms specifikus rule-oknál fogunk vele találkozni. fordítás után természetesen nem maradnak ott az extra karakterek

Page 12: LESS, mint css preprocessor

MŰVELETEK

Page 13: LESS, mint css preprocessor

• összeadhatunk

• kivonhatunk

• szorozhatunk

• oszthatunk

Page 14: LESS, mint css preprocessor

BEÉPÍTETT FÜGGVÉNYEK

Page 15: LESS, mint css preprocessor

Műveletek színekkel

Bővebben: http://lesscss.org/#-color-functions

Tartalmaz jó pár beépített függvényt, javarészt színnel kapcsolatosak Ezeket csak nagyvonalakban említeném meg.

Page 16: LESS, mint css preprocessor

Értékek lekérdezése • Lekérdezhetjük a színek bizonyos értékeit

hue(@color); saturation(@color); lightness(@color); alpha(@color);

• Kerekíthetünk felfelé és lefelé round(1.67); // returns `2` ceil(2.4); // returns `3` floor(2.6); // returns `2`

• és százalékká alakíthatunk percentage(0.5); // 50%

• JavaScriptes függvényeket is tudsz használni, ha kliens oldali less-t használsz. Bővebben: http://lesscss.org/#-javascript-evaluation

Page 17: LESS, mint css preprocessor

KOMMENTELÉS

Page 18: LESS, mint css preprocessor

Két

single line: másképpen silent comment. Fordítás után nem jelenik meg a kimeneti fájlban.

Pl:

multi line comment: akárcsak jelenleg.

Pl:

Page 19: LESS, mint css preprocessor

MIXINS

Page 20: LESS, mint css preprocessor

Mixins

• paraméter nélküli

• paraméterrel rendelkező

leginkább a classokra hasonlítanak, pontosabban úgy is viselkednek, csak itt adott a lehetőség, hogy felparaméterezd őket, illetve fordítás után nem jelennek meg.

Page 21: LESS, mint css preprocessor

Mixins • előre megadott paraméter

• ami még fasza röviden ez annyi, hogy a megadott paraméterekre hivatkozhatsz egy @arguments változóval is, így nem kell leírni az összes paramétert.

Page 22: LESS, mint css preprocessor

NAMESPACES vagy szebben névterek

Page 23: LESS, mint css preprocessor

Namespaces

ha a fentebb írt mixint szeretnéd beágyazni valahova, az alábbi formában teheted meg

itt jön képbe az oop. lessben könnyen csoportosíthatod a kódodat, modulokat alkothatsz belőlük, amikre más ruleokon belül tudsz hivatkozni.

Page 24: LESS, mint css preprocessor

NESTED RULES avagy egymásba ágyazott szabályok

Page 25: LESS, mint css preprocessor

Nested rules

Page 26: LESS, mint css preprocessor

Nested rules

Az előző kód részlet pedig lefordítva

Page 27: LESS, mint css preprocessor

Nested rules

ha az adott rulehoz szeretnél hozzávűzni, például egy .active classt, akkor az alábbi módon teheted meg:

Page 28: LESS, mint css preprocessor

Import

• tudunk benne importálni is, hasonlóképpen, mint alapból css-ben, csak itt annyi különbséggel, hogy fordítás után berántja az adott sheetbe az importált fájl tartalmát

Page 29: LESS, mint css preprocessor

GUARDS avagy feltételek

Page 30: LESS, mint css preprocessor

Guards Kimondottan nincsenek less alatt, viszont a mixineknél mégis tudjuk használni. Eléggé értelmetlen, ugye?

Page 31: LESS, mint css preprocessor

További feltételek

• iscolor

• isnumber

• isstring

• iskeyword

• isurl

• ispixel

• ispercentage

• isem

Page 32: LESS, mint css preprocessor

TELEPÍTÉS / HASZNÁLATA

Page 33: LESS, mint css preprocessor

Kliens oldali használata

Ennyi lenne:

Page 34: LESS, mint css preprocessor

Szerver oldali használat

• php, ruby, node.js, szinte minden nyelven lehetséges a fordítás

• cli segítségével is tudsz fordítani (windows alá van egy fasza tool, ami js-t használ: https://github.com/duncansmart/less.js-windows)

Page 35: LESS, mint css preprocessor

GUIk

• Window • WinLess: http://winless.org/(itt tudsz online is kódot

fordítani)

• Crunch!: http://crunchapp.net/ (adobe air alkalmazás)

• simpless: http://wearekiss.com/simpless

• OSX • less.app: http://incident57.com/less/

• simpless: http://wearekiss.com/simpless

• LiveReload http://livereload.com/