When responsive web design meets the real world
Upcoming SlideShare
Loading in...5
×
 

When responsive web design meets the real world

on

  • 2,763 views

 

Statistics

Views

Total Views
2,763
Views on SlideShare
2,699
Embed Views
64

Actions

Likes
1
Downloads
22
Comments
0

2 Embeds 64

https://twitter.com 51
http://www.waffleme.com 13

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
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment

When responsive web design meets the real world When responsive web design meets the real world Presentation Transcript

  • When ResponsiveWeb Design Meets the RealWorld
  • Follow me at @grigs http://bit.ly/grigs-akamai-rwd
  • The web has always been a balancing act. http://www.flickr.com/photos/classblog/5136926303
  • With many competing interests. http://www.flickr.com/photos/tudor/4324056624/
  • Finding balance is more difficult… http://www.flickr.com/photos/superfantastic/50088733/
  • As device diversity increases. http://www.flickr.com/photos/lyza/7382235106
  • Responsive web design offers us for a sensible way to deal with device diversity. http://www.flickr.com/photos/superfantastic/50088733/ http://www.flickr.com/photos/darrentunnicliff/4232232092/
  • And yet the one question I frequently ask myself is… http://www.flickr.com/photos/classblog/5136926303
  • Can a http://www.flickr.com/photos/sldghmmr/6041481069 experience…
  • compete with a tailored experience?http://www.flickr.com/photos/adrianclarkmbbs/3062676599/
  • Important question from many perspectives: Search engines Context Advertising Performance
  • Search engines
  • Search engines
  • Until recently, Google recommended separate sites.
  • http://www.flickr.com/photos/brunauto/5062644167/
  • Mobile context? http://www.flickr.com/photos/brunauto/5062644167/
  • http://www.flickr.com/photos/brunauto/5062644167/
  • 80% during misc downtime 76% while waiting in lines 86% while watchingTV 69% for point of sale research http://www.flickr.com/photos/carbonnyc/5140154965
  • http://www.flickr.com/photos/carbonnyc/5140154965
  • TMI
  • TMI
  • TMI 39%use on toliet!
  • Advertising
  • New responsive ad units But advertising is still big problem.
  • PERFORMANCE
  • http://www.akamai.com/dl/whitepapers/ecommerce_website_perf_wp.pdf People demand fast web sites Slow sites mean real dollars are lost 67% of consumers cite slow websites as the main cause of basket abandonment Daily Pulse Newsletter Get our free Daily Pulse Newsletter to keep informed about the latest news and insights in Digital Marketing. Register for our free Daily Pulse ADVERTISE HERE » by David Moth 06 December 2012 11:40 8 comments Print TweetTweet 236 3 Everyone hates slow loading websites, and a new survey highlights just how damaging a slow site can be to the user experience. The study by Brand Perfect found that two thirds of UK consumers (67%) cite slow loading times as the main reason they would abandon an online purchase. It’s a topic we’ve looked at in more detail in our post 'Site speed: case studies, tips and tools for improving your conversion rate', with stats showing that slow loading websites are losing businesses up to £1.73bn a year. Home / Blog Subscribe Reports Training Events Jobs Blog More Browse by topic Like 14 ShareShare 20 http://www.gomez.com/wp-content/downloads/19986_WhatMobileUsersWant_Wp.pdf Top ecommerce sites are 22% slower than last year http://www.webperformancetoday.com/2013/03/27/top-ecommerce-sites-are-slower-than-they-were-last-year/
  • http://www.gomez.com/wp-content/downloads/19986_WhatMobileUsersWant_Wp.pdf
  • http://www.gomez.com/wp-content/downloads/19986_WhatMobileUsersWant_Wp.pdf Mobile users don’t care that their network is slow.
  • http://www.gomez.com/wp-content/downloads/19986_WhatMobileUsersWant_Wp.pdf Mobile users don’t care that their network is slow.
  • http://www.gomez.com/wp-content/downloads/19986_WhatMobileUsersWant_Wp.pdf Mobile users don’t care that their network is slow.
  • Luke’s fantastic gesture reference: http://www.lukew.com/ff/entry.asp?1071
  • Luke’s fantastic gesture reference: http://www.lukew.com/ff/entry.asp?1071 Mobile browsers offer many ways to navigate desktop web sites.
  • http://www.flickr.com/photos/stephenjohnbryde/384095768/
  • http://www.flickr.com/photos/stephenjohnbryde/384095768/ There are no gestures that make a web site load faster.
  • http://www.flickr.com/photos/nathaninsandiego/4829858186
  • http://www.flickr.com/photos/wesbrowning/5316400258/
  • http://www.flickr.com/photos/69797234@N06/7203485148/
  • BBG Before the Boston Globe http://www.flickr.com/photos/69797234@N06/7203485148/
  • CSS Media Query for Mobile is Fool’s Gold“
  • CSS Media Query for Mobile is Fool’s Gold“ —Me (oops)
  • Demo from ALA article
  • 34.7K 8.1K 26.6K 76.6% 39.0K 8.4K 30.6K 78.4% 30.5K 6.7K 23.8K 78% Original Resized K Saved % Saved 43.4K 8.2K 35.2K 81.1% 26.0K 6.6K 19.4K 74.6% 34.7K 7.8K 26.9K 77.5% Original Resized K Saved % Saved
  • 34.7K 8.1K 26.6K 76.6% 39.0K 8.4K 30.6K 78.4% 30.5K 6.7K 23.8K 78% Original Resized K Saved % Saved 43.4K 8.2K 35.2K 81.1% 26.0K 6.6K 19.4K 74.6% 34.7K 7.8K 26.9K 77.5% Original Resized K Saved % Saved
  • 34.7K 8.1K 26.6K 76.6% 39.0K 8.4K 30.6K 78.4% 30.5K 6.7K 23.8K 78% Original Resized K Saved % Saved 43.4K 8.2K 35.2K 81.1% 26.0K 6.6K 19.4K 74.6% 34.7K 7.8K 26.9K 77.5% Original Resized K Saved % Saved Original Resized K Saved % Saved Total 208.3K 45.8K 162.5K 78.0%
  • The resounding answer from the community:
  • Mobile First ResponsiveWeb Design The resounding answer from the community:
  • http://bradfrostweb.com/blog/web/mobile-first-responsive-web-design/
  • http://bradfrostweb.com/blog/web/mobile-first-responsive-web-design/ Graceful degradation Progressive Enhancement
  • http://bradfrostweb.com/blog/web/mobile-first-responsive-web-design/ Graceful degradation Progressive Enhancement Desktop First ResponsiveWeb Design Mobile First ResponsiveWeb Design
  • “Awesome.We’ll devote a chapter to Mobile First ResponsiveWeb Design in our book.”
  • “Awesome.We’ll devote a chapter to Mobile First ResponsiveWeb Design in our book.” Famous last words.
  • 9% 4% 21% 38% 4% 25% Mobile is Larger Same Size Less than 10% Savings 11 to 50% Savings 51% to 100% Savings Greater than 100% Savings Where are the Mobile First RWDs? 106 sites from mediaqueri.es tested http://blog.cloudfour.com/where-are-the-mobile-first-responsive-web-designs/
  • Guy Podjarny repeated the experiment 2013: 476 sites from mediaqueri.es tested http://www.guypo.com/uncategorized/real-world-rwd-performance-take-2/
  • http://www.thefoxisblack.com/2012/10/02/the-design-thinking-behind-the-new-disney-com/
  • Akin to hosting a dinner party on short notice… http://www.flickr.com/photos/beautyredefined/2643858323/
  • So you shove all your junk in the closet. http://www.flickr.com/photos/puuikibeach/3654517679
  • Most responsive designs are…
  • http://www.flickr.com/photos/myklroventine/3400040943/ Time to pen another fool’s gold post?
  • https://twitter.com/scottjehl/status/243025352069349377
  • Being Responsive from a layout perspective should not preclude us from being responsive from a performance and interaction perspective. —Scott Jehl “ https://twitter.com/scottjehl/status/243025352069349377
  • 5key techniques for responsible responsive design
  • http://www.flickr.com/photos/auyongcheemeng/95769332/ Build Mobile First Responsive Designs #1
  • Different than Mobile First DesignTheory http://www.flickr.com/photos/localcelebrity/4831362933/
  • http://bradfrostweb.com/blog/web/mobile-first-responsive-web-design/
  • http://bradfrostweb.com/blog/web/mobile-first-responsive-web-design/ Graceful degradation Progressive Enhancement Mobile First ResponsiveWeb Design is a technical approach for responsive designs.
  • /* Wider viewports/higher resolutions (e.g. desktop) */ @media screen and (min-width:481px) { [Desktop layout rules here] } /* Mobile/lower-resolution devices */ @media screen and (max-width:480px) { [Mobile layout rules here] } Move the mobile media query block above the desktop media query. By doing this, we’re making sure the cascading effect of CSS is consistent with our mobile first progressive enhancement approach.
  • Reorder media queries so cascade goes from small to large screens /* Wider viewports/higher resolutions (e.g. desktop) */ @media screen and (min-width:481px) { [Desktop layout rules here] } /* Mobile/lower-resolution devices */ @media screen and (max-width:480px) { [Mobile layout rules here] } Move the mobile media query block above the desktop media query. By doing this, we’re making sure the cascading effect of CSS is consistent with our mobile first progressive enhancement approach.Keep basic styles outside of media queries.
  • The absence of support for media queries is in fact the first media query. —Bryan Rieger “
  • IE8 and below don’t support media queries.
  • Desktop First ResponsiveWeb Design = Desktop Fallback Mobile First ResponsiveWeb Design = Mobile Fallback What do you see if your browser doesn’t support media queries?
  • <link rel="stylesheet" type="text/css" href="taps.css" /> <link rel="stylesheet" type="text/css" href="layout.css" media="all and (min-width: 481px)"> <!--[if (lt IE 9)&(!IEMobile)]> <link rel="stylesheet" type="text/css" href="layout.css" media="all" /> <![endif]--> The conditional comment repeats the line above it ensuring desktop IE sees our layout.css file.
  • <link rel="stylesheet" type="text/css" href="taps.css" /> <link rel="stylesheet" type="text/css" href="layout.css" media="all and (min-width: 481px)"> <!--[if (lt IE 9)&(!IEMobile)]> <link rel="stylesheet" type="text/css" href="layout.css" media="all" /> <![endif]--> The conditional comment repeats the line above it ensuring desktop IE sees our layout.css file. or use Respond.js (a media query polyfill for IE)
  • Keep CSS images in their place #2
  • The taps.jpg file is 440.7K making it the largest file on the page. @media screen and (max-width:480px) { [Other CSS rules are here] .header {display:none;} }
  • The taps.jpg file is 440.7K making it the largest file on the page. @media screen and (max-width:480px) { [Other CSS rules are here] .header {display:none;} } Images with display:none are still downloaded
  • http://timkadlec.com/2012/04/media-query-asset-downloading-results/
  • Images scoped within media queries <div  id="test5"></div> @media  all  and  (min-­‐width:  601px)  {        #test5  {                background-­‐image:url('images/test5-­‐desktop.png');                width:200px;                height:75px;        } } @media  all  and  (max-­‐width:  600px)  {        #test5  {                background-­‐image:url('images/test5-­‐mobile.png');                width:200px;                height:75px;        } }http://timkadlec.com/2012/04/media-query-asset-downloading-results/
  • display:none on parent element http://timkadlec.com/2012/04/media-query-asset-downloading-results/ <div  id="test3">        <div></div> </div> #test3  div  {        background-­‐image:url('images/test3.png');        width:200px;        height:75px; } @media  all  and  (max-­‐width:  600px)  {        #test3  {                display:none;        } }
  • Image override with a media query http://timkadlec.com/2012/04/media-query-asset-downloading-results/ <div  id="test4"></div> #test4  {        background-­‐image:url('images/test4-­‐desktop.png');        width:200px;        height:75px; } @media  all  and  (max-­‐width:  600px)  {        #test4  {                background-­‐image:url('images/test4-­‐mobile.png');        } }
  • #3 Conditionally load JS based on screen size and capabilities http://www.flickr.com/photos/lyza/7382255242/
  • <iframe id="map" width="300" height="300" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com..."></iframe> Extremely long URL abbreviated This single iframe causes 47 files to be downloaded!
  • Hiding content with display:none does not prevent it from downloading. <iframe id="map" width="300" height="300" frameborder="0" scrolling="no" marginheight="0" marginwidth="0" src="http://maps.google.com..."></iframe> Extremely long URL abbreviated This single iframe causes 47 files to be downloaded!
  • https://github.com/paulirish/matchMedia.js In JavaScript, use matchMedia() or a polyfill for it to test a media query
  • <a  href="articles/latest/"            data-­‐append="articles/latest/fragment"            data-­‐media="(min-­‐width:  30em)">          Latest  Articles </a> https://github.com/filamentgroup/Ajax-Include-Pattern/ Use AJAX to bring more content into the page as the viewport width gets bigger AJAX Include Pattern
  • Behaviorial Breakpoints Better yet, keep your breakpoints in your CSS and have your JavaScript watch to changes to the DOM triggered by media queries.
  • Deliver different size <IMG>s at different screen sizes #4 http://www.flickr.com/photos/kk/230544325/
  • <img src="brews_images/bensons_bubbler.jpg" alt="Bensons Bubbler"> There are 16 beer labels on the On Tap Now page that use an img tag like this one for the Bensons Bubbler. Despite the need for multiple versions of this image depending on thescreen size, HTML only allows one value for the src.
  • <img src="brews_images/bensons_bubbler.jpg" alt="Bensons Bubbler"> There are 16 beer labels on the On Tap Now page that use an img tag like this one for the Bensons Bubbler. Despite the need for multiple versions of this image depending on thescreen size, HTML only allows one value for the src. One SRC to rule all images
  • Two most common use cases
  • https://www.flickr.com/photos/whitehouse/8491445521 Resolution Switching Includes high-density (retina) images.
  • https://www.flickr.com/photos/whitehouse/8491445521 Resolution Switching Includes high-density (retina) images.
  • http://www.flickr.com/photos/barackobamadotcom/5795228030/ Art Direction
  • Art Direction http://www.flickr.com/photos/barackobamadotcom/5795228030/
  • Art Direction http://www.flickr.com/photos/barackobamadotcom/5795228030/
  • Art Direction http://www.flickr.com/photos/barackobamadotcom/5795228030/
  • Art Direction Not simply cropping
  • Art Direction Images with text Sign In Account Get Email Español Shopping Bag Features New Arrivals Show Off Tees Backpacks Tech Toys 2/$30 & 2/$40 PINK Favorites Spin the Panty Wheel Tops All Tops Hoodies & Crews Tees & Tanks Bottoms All Bottoms Sweats Shorts Yoga PINK Loves Yoga Panties 5/$26 Styles 3/$33 Styles Shop by Style Bras All Bras Bandeaus & Bralettes 2/$42 Wear Everywhere Bras Bras 101 Swim Search
  • No good solutions
  • New proposed standards <picture> srcset src-n
  • Standards process is still moving forward http://www.flickr.com/photos/johnlamb/2576062549/
  • Get Involved at Responsiveimages.org
  • In the meantime, pick a hack. My fave is PictureFill. <div  data-­‐picture  data-­‐alt="A  giant  stone  face  at  The  Bayon  temple  in  Angkor  Thom,  Cambodia">        <div  data-­‐src="small.jpg"></div>        <div  data-­‐src="medium.jpg"  data-­‐media="(min-­‐width:  400px)"></div>        <div  data-­‐src="large.jpg"  data-­‐media="(min-­‐width:  800px)"></div>                <!-­‐-­‐  Fallback  content  for  non-­‐JS  browsers.    -­‐-­‐>        <noscript>                <img  src="small.jpg"  alt="A  giant  stone  face  at  The  Bayon                  temple  in  Angkor  Thom,  Cambodia">        </noscript> </div>https://github.com/scottjehl/picturefill
  • Handle high-density (retina) images very carefully #5 http://www.flickr.com/photos/kk/230544325/
  • 0 500000 1000000 1500000 2000000 Blackberry Curve iPhone iPhone Retina Macbook Macbook Retina 1861632 465408 519360 130080 57920 Single image on multiple screens 320x18 480x27 960x54 909x51 1818x10
  • 0 500000 1000000 1500000 2000000 Blackberry Curve iPhone iPhone Retina Macbook Macbook Retina 1861632 465408 519360 130080 57920 Single image on multiple screens 3,214% bigger 320x18 480x27 960x54 909x51 1818x10
  • Apple.com is an anti-pattern. Downloads both standard and retina. The total size of the page goes from 502.90K to 2.13MB when the retina versions of images are downloaded.
  • If possible, use CSS for now. @media  screen  and  (-­‐webkit-­‐device-­‐pixel-­‐ratio:  1)  {  /*  Image  for  normal  displays.  */ #main  { background-­‐image:  url(dog.jpg); } } @media  screen  and  (-­‐webkit-­‐min-­‐device-­‐pixel-­‐ratio:  2)  {  /*  Image  for  high  resolution  displays.  */ #main  { background-­‐image:  (dog-­‐hi-­‐res.jpg); } }
  • Foresight.js
  • PictureFill User Preference Branch Tap HD/SD to switch image density https://github.com/scottjehl/picturefill/tree/user-prefs
  • Compressive Images? http://blog.netvlies.nl/design-interactie/retina-revolution/
  • If I could dream up my ideal solution…
  • 8 guidelines and 1 immutable rule
  • Use vector-based images or font icons whenever you can#1
  • IcoMoon.io makes font icons easy IcoMoon App Premium Icons Font CDN Browse 3800+ Free Vector Icons 1200+ Vector Icons & Counting Serve Custom-Built Fonts IcoMoonIcoMoon Custom Built and Crisp Icon Fonts, Done Right Home App Icon Packs Font CDN Demo Documentation Blog About
  • Grumpicon.com helps with SVG Based on open source grunticon /' // . // |//7 /' " . | ( _ _ - -_ | '._ ' _ __ _- _ _/ '-' // _/ | | || | / / | / |VV ||--__________/-||-/| || || || || { } { } { }{ } . . Drag & Drop ur SVGs on the Grumpicon plz. What Is This Issues?
  • Encourage people to upload the highest quality source possible#2
  • Provide an automatic image resizing and compression service#3
  • Images can be resized to any size with URL parameters#4 <img src="http://src.sencha.io/320/http://sencha.com/files/u.jpg" alt="My constrained image" />
  • “Save for theWeb”should be a thing of the past. —@adambradley“
  • Provide automated output of PictureFill or alternative#5 { "source":"/source.jpg", "breakpoints":  [ {  "max-­‐width":"30em","pixel-­‐density":1,"width":360px},   {  "max-­‐width":"30em","pixel-­‐density":2,"width":720px}, {  "max-­‐width":"30em","pixel-­‐density":1,"width":800px}, {  "max-­‐width":"30em","pixel-­‐density":2,"width":1600px}, {  "pixel-­‐density":1,"width":800px}, {  "pixel-­‐density":2,"width":1600px}, ] } templates contain breakpoint information Responsive Images Markup Function PictureFill  Markup Sample syntax.Don’t get hung upon details. Markup for allimages can bechanged in one spot.
  • Provide a way to override resized images for art direction needs#6
  • Integrate image compression best practices#7 jpegtran or jpegoptim OptiPNG or PNGOUT far future expires headers
  • Bonus: Detect support forWebP image format and use it#8 The averageWebP file size is 25% - 34% smaller compared to JPEG file size. WebP compresses 34% better than libpng, and 26% better than pngout for loseless images.
  • The only rule for your responsive images implementation: Plan for the fact that it will be deprecated. Make it easy to change.
  • It’s three years later. Let’s revisit my original question.
  • http://www.flickr.com/photos/theyoungthousands/4025421438 Can a one-size fits all solution…
  • compete with a tailored experience? http://www.flickr.com/photos/fronx/2862975043
  • Or will it always beTOO BIG? http://www.flickr.com/photos/haddadi/5971508861
  • Unlikely responsive design will ever be as fast as something crafted specifically for a device. http://www.flickr.com/photos/quarenta/3256329577
  • But web design is a balancing act… http://www.flickr.com/photos/kalexanderson/6266452817
  • And performance is just one factor.
  • For most projects, responsive design will be fast enough… Flickr: Uploaded February 11, 2007 by hawridger
  • if we roll up our sleeves and build mobile first responsive designs.
  • ThankYou! Special thanks to Scott Jehl, Guy Podjarny, and all of the Flickr users sharing under creative commons.