31
Martin Michálek www.vzhurudolu.cz @machal Responzivní webdesign MSFest Praha

Responzivní webdesign (pro MS Fest)

Embed Size (px)

DESCRIPTION

http://www.vzhurudolu.cz 3 kroky za klasickým responzivním webdesignem: — Různé verze médií — Rychlost načítání — Efektivita práce: mikrobreakpointy a mobile up

Citation preview

Page 1: Responzivní webdesign (pro MS Fest)

Martin Michálekwww.vzhurudolu.cz

@machal

Responzivníwebdesign

MSFest Praha

Page 2: Responzivní webdesign (pro MS Fest)

★ Statistiky★ Klasický responzivní webdesign★ Různé verze médií★ Rychlost načítání★ Efektivita práce: mikrobreakpointy a mobile up

Page 3: Responzivní webdesign (pro MS Fest)

zdroj dat: rankings.cz

Mobilní9%

Opera4%

IE812%

IE95%

IE1014% Chrome

27%

Firefox29%

Podíly prohlížečů v ČR 9/2013

Aktuální podíly prohlížečů

Page 4: Responzivní webdesign (pro MS Fest)

Spousty rozlišení obrazovky

0

150

300

450

600

1/20091/2010

1/20111/2012

1/2013

e-Slovensko.cz – počty rozlišení obrazovky

Page 5: Responzivní webdesign (pro MS Fest)

★ Statistiky★ Klasický responzivní webdesign★ Různé verze médií★ Rychlost načítání★ Efektivita práce: mikrobreakpointy a mobile up

Page 6: Responzivní webdesign (pro MS Fest)

Klasický responzivní webdesign

Page 7: Responzivní webdesign (pro MS Fest)

Flexibilní layout

.container  {    width:  1000px;}

.box  {    width:  500px;    padding:  50px;    margin:  50px;}

.container  {    max-­‐width:  1000px;}

.box  {    width:  50%;    padding:  50px  5%;    margin:  50px  5%;}

.box

.container

Page 8: Responzivní webdesign (pro MS Fest)

Flexibilní obrázky

<img src="mapa.jpg" width="312" height="175" alt="…">

.map img { max-width: 100%; height: auto;}

http://unstoppablerobotninja.com/entry/fluid-images/

Page 11: Responzivní webdesign (pro MS Fest)

Klasický responzivní webdesign

Řeší★ Přizpůsobení velikosti displeje

Neřeší★ Různé verze médií★ Rychlost načítání★ Efektivita práce

Page 12: Responzivní webdesign (pro MS Fest)

★ Statistiky★ Klasický responzivní webdesign★ Různé verze médií★ Rychlost načítání★ Efektivita práce: mikrobreakpointy a mobile up

Page 13: Responzivní webdesign (pro MS Fest)

Responzivní obrázky – výběr možností

★ Response (front-end JS)http://responsejs.com/

★ Picturefill (front-end JS)https://github.com/scottjehl/picturefill

★ Adaptive Images (back-end PHP)http://adaptive-images.com/

Více řešení: http://blog.cloudfour.com/responsive-imgs/

Page 14: Responzivní webdesign (pro MS Fest)

Někdy je efektivnější back-end

<?php if ($isSmartphone): // button s odkazem na mapuelse: // iframe s mapouendif; ?>

http://kratce.vzhurudolu.cz/post/44227784297/docasna-server-detekcehttp://mobiledetect.net/

Page 15: Responzivní webdesign (pro MS Fest)

★ Statistiky★ Klasický responzivní webdesign★ Různé verze médií★ Rychlost načítání★ Efektivita práce: mikrobreakpointy a mobile up

Page 16: Responzivní webdesign (pro MS Fest)

Pomalý web = špatný byznys

40% lidí opustilo stránku, která se natahovala déle než 3 vteřiny.

73% uživatelů mobilního internetu řeklo, že narazilo na stránku, která se načítala příliš pomalu.

Jednovteřinové zpoždění z doby načítání stránky může způsobit 7%ní pokles konverzí.

http://blog.kissmetrics.com/loading-time/

Page 18: Responzivní webdesign (pro MS Fest)

Sdílecí tlačítka

Problém:

Na maximu rychlosti EDGE se tlačítka stahují 10 vteřin.

Page 20: Responzivní webdesign (pro MS Fest)

History API

https://github.com/browserstate/history.js/http://pjax.heroku.com/

Page 21: Responzivní webdesign (pro MS Fest)

★ Statistiky★ Klasický responzivní webdesign★ Různé verze médií★ Rychlost načítání★ Efektivita práce: mikrobreakpointy a mobile up

Page 22: Responzivní webdesign (pro MS Fest)

Neefektivita klasického responzivního vývoje

smartphone.css tablet.css desktop.css

Problém #1hodně breakpointů, hodně verzí kódu

Page 23: Responzivní webdesign (pro MS Fest)

Neefektivita klasického responzivního vývoje

smartphone.css tablet.css desktop.css

Řešení # 1— 1 layoutový breakpoint (např. 600px)

— mikrobreakpointy vázané k UI elementům

Page 24: Responzivní webdesign (pro MS Fest)

Neefektivita klasického responzivního vývoje

Problém #2architektura kódu od desktopu dolů

CSS kód

CSS kód

CSS kód

Page 25: Responzivní webdesign (pro MS Fest)

Neefektivita klasického responzivního vývoje

Řešení #2Mobile Up namísto Desktop Down

CSS kód

CSS kód

CSS kód

Page 26: Responzivní webdesign (pro MS Fest)

Desktop Down Mobile Up

Zezdola nahoru nebo naopak?

https://github.com/scottjehl/Respond

/* Desktop */.nav { … }

/* Mobile */@media (max-width: 480px) { .nav { … }}

/* Mobile */.nav { … }

/* Desktop */@media (min-width: 480px) { .nav { … }}

– křápy dostanou nejpokročilejší řešení– desktop se špatně předefinovává

– IE8- nerozumí obsahu min-width

http://kratce.vzhurudolu.cz/post/42187934506/mobile-first-css

Page 28: Responzivní webdesign (pro MS Fest)

Podmíněné načítání pluginů s Modernizrem

https://twitter.com/machal/status/296152170716356608

https://bitbucket.org/machal/ubytovaniprovence.cz/…

Modernizr.load({

test: Modernizr.mq('screen and (min-width: 481px)'),

yep : [ '/fancybox/jquery.fancybox.pack.js', '/fancybox/jquery.fancybox.css', ], complete : function () { if (Modernizr.mq('screen and (min-width: 481px)')) { $('.fancybox').fancybox(); } }});

Lightbox na malém

displej je blbina!

Page 29: Responzivní webdesign (pro MS Fest)

AjaxInclude

Základní počasí

Počasí rozšířené pro větší displeje

http://filamentgroup.com/lab/ajax_includes_modular_content/

<a href="..." data-append="pocasi/plne" data-media="(min-width: 30em)"> Počasí</a>

Page 30: Responzivní webdesign (pro MS Fest)

Inspirace

http://mediaqueri.es/