82
Handys und Tablets MOBILE-FRIENDLY WEBENTWICKLUNG JENSEITS DES DESKTOPS Patrick H. Lauke / MobileTech Conference 2011 / München / 30 März 2011

Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

Embed Size (px)

Citation preview

Page 1: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

Handys und Tablets MOBILE-FRIENDLY WEBENTWICKLUNG JENSEITS DES DESKTOPS

Patrick H. Lauke / MobileTech Conference 2011 / München / 30 März 2011

Page 2: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

web evangelist bei Opera

Page 3: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

mobile web istimmer wichtiger

Page 4: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

wir brauchen eine site für's iPhone

Page 5: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

oh, und für's iPad

Page 6: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

“remove iPhone from ass”Peter-Paul Koch, The iPhone obsession

www.quirksmode.org/blog/archives/2010/02/the_iphone_obse.html

Page 7: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

sites die auf (fast) allen mobilen devices laufen

Page 8: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 9: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 10: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

was ist überhaupt ein “mobile device”?

Page 11: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 12: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 13: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

3 ansätze

Page 14: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

1. nichts tun

Page 15: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

nicht mehr nur WAP oder text

Page 16: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

moderne mobile browserkommen mit

“normalen” sites zurecht

Page 17: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 18: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

“aber der mobile kontext...”

Page 19: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

“Desktop computers and mobile devices are so different that the only way to offer a great user experience is to create two

separate designs — typically with fewer features for mobile.”www.useit.com/alertbox/mobile-redesign.html

Page 20: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

2. separate mobile site(m.flickr.com, mobile.mysite.com, ...)

Page 21: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

vorsicht: browser sniffingphoto: http://www.flickr.com/photos/timdorr/2096272747/

Page 22: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

lasst den user entscheiden:desktop oder mobile?

Page 23: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 24: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 25: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 26: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 27: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 28: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 29: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 30: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 31: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

“refactored” für kleinere displays,nicht verwässert für “mobile”

Page 32: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

3. einzige adaptive site

Page 33: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

nichts neues...fluid layout, progressive enhancement, graceful degradation

Page 34: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

www.alistapart.com/articles/dao

The Sage “... accepts the ebb and flow of things, Nurtures them, but does not own them,”

Tao Te Ching; 2 Abstraction

Page 35: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 36: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

adaptive layouts

Page 37: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

CSS 2 Media Types

Page 38: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

Media types

all brailleembossed handheldprint projectionscreen speechtty tv

Page 39: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

CSS 2.1 Media Types<link rel="stylesheet" ... media="print" href="...">

@import url("...") print;

@media print { // insert CSS rules here}

Page 40: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

CSS 3 Media Queries“...the new hotness” Jeffrey Zeldman

http://www.zeldman.com/2010/04/08/best-aea-yet/

Page 41: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

CSS 3 Media Queries

● erweitern CSS 2.1 Media Types konzept● präzisere kontrolle (nicht nur screen, print...)

http://www.w3.org/TR/css3-mediaqueries/

Page 42: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

Media featureswidth colorheight color-indexdevice-width monochromedevice-height resolutionorientation scanaspect-ratio griddevice-aspect-ratio

Page 43: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

CSS 3 Media Queries<link rel="stylesheet" ... media="screen and (max-width:480px)" href="...">

@import url("...") screen and (max-width:480px);

@media screen and (max-width:480px) { // insert CSS rules here}

Page 44: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

Multiple media queries@media screen and (max-width:480px) { // screen device and width < 480px }

@media screen and (max-width:980px) { // screen device and width < 980px }

@media screen and (min-width:980px) { // screen device and width > 980px }

Page 45: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

www.alistapart.com/articles/responsive-web-design

Page 46: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

http://mediaqueri.es

Page 47: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

http://mediaqueri.es

Page 48: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

http://mediaqueri.es

Page 49: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

http://mediaqueri.es

Page 50: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

“not a magic bullet...”

Page 51: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

viewport meta

Page 52: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

physische vs virtuelle pixel

Page 53: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 54: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

viewport metaschlägt dem browser interpretierung vor

Page 55: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

viewport meta<meta name="viewport" content="width=device-width">

<meta name="viewport" content="width=320, initial-scale=2.3,user-scalable=no">

http://developer.apple.com/safari/library/documentation/AppleApplications/Reference/SafariWebContent/UsingtheViewport/UsingtheViewport.html

Page 56: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 57: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 58: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

<meta name="viewport" content="width=550">

Page 59: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 60: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

<meta name="viewport"content="width=device-width">

+

@media screen and (…) { … }

Page 61: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

CSS Device Adaptation@viewport { width: device-width;}

@viewport { width: 320px; zoom: 2.3; user-zoom: fixed;}

dev.w3.org/csswg/css-device-adapt

Momentan nur in Opera Mobile 11 beta mit -o- prefix dev.opera.com/articles/view/an-introduction-to-meta-viewport-and-viewport

Page 62: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

touch interfaces

Page 63: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

:hoveronmouseover(...)onmouseout(...)

Page 64: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 65: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

kein hover auftouch devices**einige devices “faken” es aber

Page 66: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

:focusonfocus(...)onblur(...)

Page 67: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

kein focus auftouch devices*

*nur nach einem click

Page 68: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

touch events

window.addEventListener('touchstart', function(e){ … }, true);window.addEventListener('touchmove', function(e){ … }, true);window.addEventListener('touchend', function(e){ … }, true);

e.touches[0].pageX; e.touches[0].pageY; …

Page 69: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

progressive enhancement:maus, keyboard und touch events

Page 70: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

multimedia

Page 71: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

video, audio und canvasohne “steck-eins”

(kein Java / Flash / Silverlight auf mobilen geräten)

Page 72: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011
Page 73: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

geolocation

Page 74: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

navigator.geolocation.getCurrentPosition(success, error);navigator.geolocation.watchCurrentPosition(success, error);

function success(position) {/* where's Wally? */var lat = position.coords.latitude;var long = position.coords.longitude;...

}

Page 75: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

progressive enhancement:geolocation als sahnehäubchen

(+ IP look-up, form, ...)

Page 76: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

online/offline

Page 77: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

application cache, localStorage/sessionStorage,

WebSQL, IndexDB

Page 78: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

…und mehr (in arbeit)WebGL, device API, orientation …

Page 79: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

adaptive technikennicht nur für “mobile”

Page 80: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

twitter.com/#!/stephenhay/status/23350345962889216

Page 81: Handys und Tablets - Webentwicklung jenseits des Desktops - MobileTech Conference - München 30.03.2011

1. nichts tun2. separate mobile site3. einzige adaptive site