Making your site mobile-friendly - DevCSI Reading 21.07.2010
Upcoming SlideShare
Loading in...5
×
 

Making your site mobile-friendly - DevCSI Reading 21.07.2010

on

  • 4,741 views

Extended version of my "Making your site mobile-friendly" talk, including a short look at native applications vs web apps, for the UKOLN DevCSI event "Developing for Mobile Applications in Education" ...

Extended version of my "Making your site mobile-friendly" talk, including a short look at native applications vs web apps, for the UKOLN DevCSI event "Developing for Mobile Applications in Education" in Reading http://www.ukoln.ac.uk/events/devcsi/mobile_applications/

Statistics

Views

Total Views
4,741
Views on SlideShare
4,734
Embed Views
7

Actions

Likes
6
Downloads
37
Comments
1

1 Embed 7

http://sideblog.jendryschik.de 7

Accessibility

Categories

Upload Details

Uploaded via as Adobe PDF

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel

11 of 1

  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
  • mobile, web design
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

    Making your site mobile-friendly - DevCSI Reading 21.07.2010 Making your site mobile-friendly - DevCSI Reading 21.07.2010 Presentation Transcript

    • Making your site mobile-friendly TIPS AND TECHNIQUES FOR A BETTER MOBILE PRESENCE Patrick H. Lauke / Developing for Mobile Applications in Education / DevCSI / Reading / 21 July 2010
    • mobile web is increasingly important
    • we need a site that works on iPhone
    • ...works on iPhone... oh, and iPad
    • “remove iPhone from ass” Peter-Paul Koch, The iPhone obsession www.quirksmode.org/blog/archives/2010/02/the_iphone_obse.html
    • make your site work on all (most) mobile devices
    • 1. do nothing
    • not WAP or text anymore...
    • mobile browsers will work ok-ish
    • “But the mobile context...”
    • 2. separate mobile site (m.flickr.com, mobile.mysite.com, ...)
    • beware browser sniffing photo: http://www.flickr.com/photos/timdorr/2096272747/
    • offer users choice: desktop or mobile?
    • refactored for small screen, not dumbed down for mobile
    • 3. single adaptive site
    • nothing new... fluid layout, progressive enhancement, graceful degradation
    • CSS 2 Media Types (screen, print, handheld)
    • CSS 2.1 Media Types <link rel="stylesheet" ... media="print" href="..."> @import url("...") print; @media print { // insert CSS rules here }
    • CSS 3 Media Queries “...the new hotness” Jeffrey Zeldman http://www.zeldman.com/2010/04/08/best-aea-yet/
    • CSS 3 Media Queries ● build and extend CSS 2.1 Media Types ● more granular control of capabilities ● width, height, orientation, color, resolution, … http://www.w3.org/TR/css3-mediaqueries/
    • 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 }
    • viewport meta
    • viewport meta ● desktop: viewport = visible area of browser ● mobile: “virtual viewport”, physical pixels, zoom ● viewport meta gives hints
    • 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
    • minimise data and server requests (minify JavaScript, combine CSS, …)
    • minimise data ● data transfer over network can be slow ● compress images (PNGCrush) ● optimise your HTML (death to div-itis) ● minify JavaScript ● combine CSS
    • minimise server requests ● each request has overhead ● limit to concurrent requests ● caching not reliable (e.g. iPhone > 25Kb)
    • CSS sprites Dave Shea, A List Apart www.alistapart.com/articles/sprites
    • width: 50px; height: 50px; background: url(icons.gif) no-repeat -51px 0;
    • data URLs http://software.hixie.ch/utilities/cgi/data/data
    • data URLs <img width="48" height="48" alt="Redux gravatar" src="data:image/jpeg,%FF%D8%FF%E0%00%10JFIF %00%01%01%01%00H%00H%00%00%FF% … "> h1 { background: url("data:image/jpeg,%FF%D8%FF %E0%00%10JFIF%00%01 … ") no-repeat left top; }
    • native app vs web app
    • HTML5 <!DOCTYPE html>
    • video, audio and canvas on any device without plugins (Java / Flash / Silverlight not ubiquitous)
    • HTML5 (and friends) has lots more APIs for developers (for powerful client-side apps)
    • isgeolocationpartofhtml5.com
    • geolocation 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; ... }
    • offline detection... window.addEventListener('online', function(){ … }, true); window.addEventListener('offline', function(){ … }, true);
    • application cache <html manifest=”blah.manifest”> CACHE MANIFEST images/sprites.png scripts/common.js scripts/jquery.js styles/global.css data.xml NETWORK: resources/news.xml FALLBACK: images/ offline/not-available.png
    • …and more (coming) WebGL, <device>, Contacts API …
    • 1. do nothing 2. separate mobile site 3. single adaptive site
    • www.opera.com/developer patrick.lauke@opera.com people.opera.com/patrickl/presentations/devcsi-mobile_21.07.2010/devcsi-mobile_21.07.2010.pdf