Smarta stilmallar nya export

65
SMARTA STILMALLAR Frontendarens förlängda arm (och nördiga utlopp)

description

Vore det inte underbart om stilmallar höll koll på att en design implementeras konsekvent? Att de höll koll och ser till att inga snedtramp sker vad gäller tillgänglighet? Att de ger en hjälpande hand när utvecklaren undrar hur en design ska tolkas? Med SassScript blir sådana smarta stilmallar möjligt! Pelle Wessman har grottat ned sig i ämnet och besökte Valtech Stockholm för att gå igenom hur SassScript kan bidra till framgången i projekten.

Transcript of Smarta stilmallar nya export

Page 1: Smarta stilmallar nya export

SMARTA STILMALLARFrontendarens förlängda arm (och nördiga utlopp)

Page 2: Smarta stilmallar nya export
Page 3: Smarta stilmallar nya export

SMARTA STILMALLAR GER BRA DESIGN

Page 4: Smarta stilmallar nya export

TESER OM BRA DESIGN:

Page 5: Smarta stilmallar nya export

1. BRA DESIGN ÄR KONSEKVENT

Att följa en stilguide – det kan väl alla?

Page 6: Smarta stilmallar nya export

2. BRA DESIGN ÄR TILLGÄNGLIG

Färgkontrast – för fejjan i solen är ett måste

Page 7: Smarta stilmallar nya export

3. BRA DESIGN ÄR SNYGGA FÄRGER

Vi vet alla att magenta är den heliga gralen

Page 8: Smarta stilmallar nya export

4. BRA DESIGN ÄR MATEMATIK

Utan exponenter och annat mys fäller vi alla en tår

Page 9: Smarta stilmallar nya export

ALLTSÅ:HUR SVÅRT KAN

BRA DESIGN VARA?

Page 10: Smarta stilmallar nya export

JÄTTESVÅRT

Page 11: Smarta stilmallar nya export

LÖSNINGEN HETER

Page 12: Smarta stilmallar nya export

SassScript

Page 13: Smarta stilmallar nya export

”SassScript is code that’s embedded in Sass documents to allow for property values to be computed from variables.”

–Sass-dokumentationen !!!

”SassScript, a simple scripting language used in Sass files”

–Wikipedia

Page 14: Smarta stilmallar nya export

HUR KAN STILMALLAR BLI SMARTA?

Page 15: Smarta stilmallar nya export

TRE TIPS FRÅN MINA BYGGEN

och något lite nördigt

Page 16: Smarta stilmallar nya export

1. Konsekventa färger

2. Tillgängliga färger

3. Svårtolkade färger

Page 17: Smarta stilmallar nya export

VEM ÄR JAG?• Pelle Wessman, @voxpelli

• Full-stack webbkodare

• Bloglovin

Page 18: Smarta stilmallar nya export

1. KONSEKVENTA FÄRGER

Smarta stilmallar som ger konsekventa knappar

Page 19: Smarta stilmallar nya export

HÄRRÖRA FÄRGER

• Att utgå från enbart en färg:

@include button-color($baseColor);

• Snarare än att definiera dem alla:

@include button-color($top, $bottom, $border, $font);

(en Sass mixin)

Page 20: Smarta stilmallar nya export

HSV TILL HSL• HSV = HSB = Hue,

Saturation, Value/Brightness

• Används av Photoshop

• Kan beroende på design vara nyckeln till variationer inom ett designelement

Page 21: Smarta stilmallar nya export
Page 22: Smarta stilmallar nya export
Page 23: Smarta stilmallar nya export

ch_hsv_to_color()Matematisk – ladda ner bibliotek eller googla formel

Page 24: Smarta stilmallar nya export

RESULTAT@include button-color(#9fcb56);

@include button-color(#c6c250);

@include button-color(#9fcb56);

Page 25: Smarta stilmallar nya export
Page 26: Smarta stilmallar nya export

2. TILLGÄNGLIGA FÄRGER

Smarta stilmallar som ger läsliga knappar

Page 27: Smarta stilmallar nya export

MÄTA KONTRAST• Matematiskt

• Lea Verou: http://leaverou.github.io/contrast-ratio/

• WCAG 2.0 riktlinjer

Page 28: Smarta stilmallar nya export

KONTRASTVARNING

Page 29: Smarta stilmallar nya export
Page 30: Smarta stilmallar nya export
Page 31: Smarta stilmallar nya export

Ingen varning:@include button-color—contrast-alert(#9fcb56);

Varning:@include button-color—contrast-alert(#000);

Page 32: Smarta stilmallar nya export

VÄLJ BÄST KONTRAST

Page 33: Smarta stilmallar nya export

@include button-color—contrast(#9fcb56);

@include button-color—contrast(#666);

Page 34: Smarta stilmallar nya export
Page 35: Smarta stilmallar nya export

3. SVÅRTOLKADE FÄRGER

Page 36: Smarta stilmallar nya export

Vilken nivå på transparens?

Vilken färg?

Bild: Pen Waggener, https://flic.kr/p/6FiXXp

Page 37: Smarta stilmallar nya export

KLURA UT TRANSPARENS

1. Plocka ut färger ur bilden

2. Räkna ut blandningen som krävs för resultatet

3. Få transparensen som resultat

Page 38: Smarta stilmallar nya export

$alpha: ch_calculate_alpha(#FFF, #526D4E, #DFE4DF);

Page 39: Smarta stilmallar nya export

KLURA UT FÄRG1. Använd den uträknade transparensen

2. Plocka ut nya färger ur bilden

3. Räkna ut nya blandningen som krävs för resultatet

4. Få färgen som resultat

Page 40: Smarta stilmallar nya export

$color: ch_calculate_top_color($alpha, #BEDBA1, #89D338);

Page 41: Smarta stilmallar nya export

background: rgba(255, 255, 255, 0.816)

background: rgba(125, 209, 32, 0.816)

Page 42: Smarta stilmallar nya export

Bild: Pen Waggener, https://flic.kr/p/6FiXXp

Page 43: Smarta stilmallar nya export

Bild: Pen Waggener, https://flic.kr/p/6FiXXp

Page 44: Smarta stilmallar nya export

SassScripts BEGRÄNSNINGAR

Page 45: Smarta stilmallar nya export

• Enkelt standardbibliotek – innehåller bara det absolut mest basala

• Avancerade matematiska funktioner saknas

Page 46: Smarta stilmallar nya export

PROBLEM = MÖJLIGHETER

Page 47: Smarta stilmallar nya export

APPROXIMATIVA DECIMALEXPONENTIALERen stillektion i matematik på tunn is

Page 48: Smarta stilmallar nya export

x2.4 = ?

Page 49: Smarta stilmallar nya export

x2.4 = x12 / 5Största gemensamma delare

http://rosettacode.org/wiki/Greatest_common_divisor

Page 50: Smarta stilmallar nya export

x1 / 5 =5√x

Page 51: Smarta stilmallar nya export

x12 / 5 =(x12)1 / 5

Page 52: Smarta stilmallar nya export

x12 / 5 =5√(x12)

Page 53: Smarta stilmallar nya export

x12 / 5 =5√(x12)Principalgrenen av n:te roten (isen börjar bli tunn nu)

http://rosettacode.org/wiki/Nth_root

Page 54: Smarta stilmallar nya export

x2.4 =5√(x12)

Page 55: Smarta stilmallar nya export

LÖSNING AV APPROXIMATIVA DECIMALEXPONENTIALER

• Algoritm, största gemensamma delare

• for-loop

• Algoritm, principalgrenen av n:te roten

Page 56: Smarta stilmallar nya export

…eller så laddar man hem ett bibliotek

Page 57: Smarta stilmallar nya export

VARFÖR INTE RUBY?

• Slipper externa beroenden

• Valfrihet av kompilator (ex. libsass)

Page 58: Smarta stilmallar nya export

MEN TESTER DÅ?

OCH DOKUMENTATION?

Page 59: Smarta stilmallar nya export

SASSDOCJSDoc för Sass

Page 60: Smarta stilmallar nya export
Page 61: Smarta stilmallar nya export

BOOTCAMPAutomatiska tester av SassScript

Page 62: Smarta stilmallar nya export
Page 63: Smarta stilmallar nya export

GÖR STILMALLAR SMARTA

Stilmallarna ska hjälpa dig jobba och tänka Hindra dig från misstag och lyfta dig till nya höjder

Page 64: Smarta stilmallar nya export

bower install sass-color-helpers —save !

https://github.com/voxpelli/sass-color-helpers !!

Andra projekt på: http://sache.in/ Bra nyhetsbrev på: http://sassnews.com/

Page 65: Smarta stilmallar nya export

TACK!Presentatör: Pelle Wessman

På sociala webben: @voxpelli

På indiewebben: voxpelli.com

På jorden: Malmö Disclaimer: Designtipsen i denna presentationen är till för att visa på en poäng och bör ej tas på alltför stort allvar :)