SlideShare a Scribd company logo
1 of 34
Musketeers.me




                 Responsive
                Development
           Kevin Bruce of Musketeers.me
Who Am I?




                       Designer
                       Developer

       Musketeers.me
2
Where I Work




       Musketeers.me
3
Musketeers.me




              THE Question:
      Is a responsive site the best
          way to go for my site?
Options




                                                                        iPhone

                                                          Camera
                                                         Compass
                                                    Accelerometer
                                                      Geolocation

     Full Responsive Site   Dedicated Mobile Site      Native Application



         Musketeers.me
5
Full Responsive Site


    Benefits

    • One Codebase

    • Same html file serves all devices

    Drawbacks

    • Not completely tailored to any device

    • Unless you have a process in place, it can take as much time to write
      as a separate mobile site




         Musketeers.me
6
Dedicated Mobile Site


    Benefits

    • Cater to mobile content needs like Location and contact info

    • Can concentrate on touch-based UI

    Drawbacks

    • Completely separate codebase and content to maintain

    • Studies have shown that a separate “paired-down” site pisses people
      off.




         Musketeers.me
7
Native Mobile App


    Benefits

    • Native access to device hardware

    • Interface is more responsive

    Drawbacks

    • Development cost is high to write and maintain

    • At least two mobile Operating Systems to write for




         Musketeers.me
8
My Own Personal Decision-Makers


                             Dedicated           Native
     Responsive Site
                             Mobile Site       Application
    • Information         • Shopping Cart   • Full Web
      Website                                 Application
                          • Login-Based
    • Light Interactive     Website         • Giant Shopping
      Website                                 Cart




          Musketeers.me
9
Musketeers.me




                Responsive Design
In a Nutshell




        flexible grid layouts that respond to the size of your
                     browser window (viewport).

         Musketeers.me
11
Flexible Grid is the Key to Responsive Design


        A flexible grid is made up of fluid columns and rows
              that use ems and percentages for setting
          width, height, font-size, image and media sizes.




         Musketeers.me
12
Media Queries



      Media Queries are a CSS3 feature that was introduced into the modern
      browser. It is a series of “break points” based on your browser window
      (or “viewport”) size.

      Your browser only uses the styles within the breakpoint that matches
      your viewport size. Of course, it also uses styles outside of any
      breakpoints as well.




          Musketeers.me
13
Media Queries



      1. Use the @import rule to import styles from other style sheets:

      <div id=”google_whitespace”
         style=”@import url(style600min.css) screen and (min-width: 600px);”>
      </div>




          Musketeers.me
14
Media Queries



      2. Put media queries directly in the style sheet.
         This is the most common approach.
      @media screen and (min-width: 400px) and (orientation: portrait) {
              #nav li {
                  float: right;
              }
         }
      @media screen and (min-width: 800px) {
            #nav li {
               float: left;
              }
         }




           Musketeers.me
15
Media Queries



      3. Include a query in a linked style sheet’s media attribute:

      <link rel="stylesheet"
          type="text/css"
          media="screen and (max-device-width: 800px)" href="style800.css" />




          Musketeers.me
16
Mobile First

                 style.css

                                 Depending on who you talk
      body { … }
                                 to, mobile-first is the way to go.
       @media only screen
       and (min-width: 200px)
                                 Design for mobile, serve the mobile
       mobile                    breakpoints first and then
                                 progressively enhance from there for
       @media only screen
       and (min-width: 1020px)   larger viewports.
       tablet
                                 Use “min-width” breakpoints so the
       @media only screen and    larger screens inherit styles from the
       (min-width: 1450px)       smaller viewport break points, in
       desktop                   effect, cascading up.


            Musketeers.me
17
Mobile Content First


     The important take-away from mobile-first is “content-first.”

     Distill your message down to the essentials!

     Start with the content you would show in your mobile view and add in the
     Design cruff from there.

     Also, write semantic markup!




          Musketeers.me
18
Musketeers.me




         Responsive Development
Server Side Help

     Server side is an alternate, powerful tool to help support
     your responsive front end strategy.


     User Agent Detection can tell you if a device is using a mobile
     browser, as well as “The IE.”




          Musketeers.me
20
Server Side Help

     Server Side User Agent Detection can help your responsive
     front end strategy. With it, your code can help mobile and
     tablet pages by:
     • Compacting javascript and styles, insert them directly into
       the html page and serve them as one document, lessening
       the server trips.




          Musketeers.me
21
Server Side Help

     Server Side User Agent Detection can help your responsive
     front end strategy. With it, your code can help mobile and
     tablet pages by:
     • Compacting javascript and styles, insert them directly into
       the html page and serve them as one document, lessening
       the server trips.
     • Server touch-based javascript for touch devices and omit
       unneeded code.




          Musketeers.me
22
Server Side Help

     Server Side User Agent Detection can help your responsive
     front end strategy. With it, your code can help mobile and
     tablet pages by:
     • Compacting javascript and styles, insert them directly into
       the html page and serve them as one document, lessening
       the server trips.
     • Server touch-based javascript for touch devices and omit
       unneeded code.
     • Embed images with Data URIs for mobile (http://css-
       tricks.com/data-uris/).



          Musketeers.me
23
Server Side Help

     Server Side User Agent Detection can help your responsive
     front end strategy. With it, your code can help mobile and
     tablet pages by:
     • Compacting javascript and styles, insert them directly into
       the html page and serve them as one document, lessening
       the server trips.
     • Server touch-based javascript for touch devices and omit
       unneeded code.
     • Embed images with Data URIs for mobile (http://css-
       tricks.com/data-uris/).
     • Serve correctly sized images for the device.

          Musketeers.me
24
Musketeers.me




                The IE
State of IEEEEEEE

                         • IE 6: it sucks, but government still has a lot of
                           internal systems that only work on it, so…
                         • IE 7: Sucks less, but few rely on it for internal
                           systems (see IE 6)
                         • IE 8: really a step in the right direction, but it
                           doesn’t support media queries or html5… and
                           many CSS3 features.
                         • IE 9: This is the big improvement! Standards
                           compliant… sort of (it’s all relative, isn’t it?).
                           HTML5, media queries- all good!
                         • IE 10: reported to be awesome with web
                           standards (really!)… and sooo many people
                           don’t have it yet.
         Musketeers.me
26
IE retrofits

     IE 8 and below can usually be taught html5 and media queries
     with the help of a couple of javascripts:
     1. Modernizer.js teaches pre-HTML5 browsers to see the new
        HTML5 tags as block elements.
        (http://modernizr.com)
     2. Respond.js teaches IE what media queries are and how to
        use them.
        (https://github.com/scottjehl/Respond)




          Musketeers.me
27
Musketeers.me




    What can we do with a mobile
              device?
Hardware We Can Access Varies




                                         iPhone   Android

                               Camera
                              Compass
                         Accelerometer
                           Geolocation



         Musketeers.me
29
Hardware We Can Access Varies

     HTML5 standards opened up access to much of device
     hardware. And more and broader support is coming.
     • Solid support for the accelerometer and GPS in both iOS and
       Android.
     • Access to the GPU (WebGL) and audio hardware (Web Audio
       API).
     • Access to the camera (HTML Media Capture) is a very new
       feature and has full support in Android 3.0 and limited
       support in iOS6 Safari and Chrome.




          Musketeers.me
30
Are we there yet?


                         Facebook’s stint with an html5 app
                         was universally panned. The roars of
                         applause were deafening when the
                         native app was released.


                         So… no, you shouldn’t try to imitate a
                         native app with responsive design.
                         You will most likely fail.




         Musketeers.me
31
However…


     The one thing Facebook did accomplish was the responsive
     site was a good test case. Responsive Design is good
     prototype for the native app.


     …provided you don’t drive them away in the process.


     Slap “Beta” on it!




          Musketeers.me
32
Good Resources


     MOBILE-FIRST
     http://www.html5rocks.com/en/mobile/responsivedesign/
     A NON-RESPONSIVE APPROACH TO BUILDING CROSS-DEVICE WEBAPPS
     http://www.html5rocks.com/en/mobile/cross-device/
     CAPTURING AUDIO & VIDEO IN HTML5
     http://www.html5rocks.com/en/tutorials/getusermedia/intro/
     CREATING A MOBILE-FIRST RESPONSIVE WEB DESIGN
     http://www.html5rocks.com/en/mobile/responsivedesign/
     CONDITIONAL LOADING FOR RESPONSIVE DESIGN
     http://24ways.org/2011/conditional-loading-for-responsive-designs



          Musketeers.me
33
Thank You



                           Personal Site: kevinbruce.com

                        Professional Site: musketeers.me

                                   Blog: neutralgood.net

                                Twitter: @kevinbruce

                               Rate me: https://joind.in/6866




        Musketeers.me
34

More Related Content

What's hot

Webnet Presentation
Webnet PresentationWebnet Presentation
Webnet Presentation
Trish Roque
 
Build Custom Surveys and Forms Natively in Drupal Gardens
Build Custom Surveys and Forms Natively in Drupal GardensBuild Custom Surveys and Forms Natively in Drupal Gardens
Build Custom Surveys and Forms Natively in Drupal Gardens
Acquia
 

What's hot (20)

Responsive Web Design using ZURB Foundation
Responsive Web Design using ZURB FoundationResponsive Web Design using ZURB Foundation
Responsive Web Design using ZURB Foundation
 
Emkane RCC wp qs
Emkane RCC wp qsEmkane RCC wp qs
Emkane RCC wp qs
 
Designing an Enterprise CSS Framework is Hard, Stephanie Rewis
Designing an Enterprise CSS Framework is Hard, Stephanie RewisDesigning an Enterprise CSS Framework is Hard, Stephanie Rewis
Designing an Enterprise CSS Framework is Hard, Stephanie Rewis
 
Bootstrap for Beginners
Bootstrap for BeginnersBootstrap for Beginners
Bootstrap for Beginners
 
DrupalCamp NYC Panels Presentation - April 2014
DrupalCamp NYC Panels Presentation - April 2014DrupalCamp NYC Panels Presentation - April 2014
DrupalCamp NYC Panels Presentation - April 2014
 
Getting started with CSS frameworks using Zurb foundation
Getting started with CSS frameworks using Zurb foundationGetting started with CSS frameworks using Zurb foundation
Getting started with CSS frameworks using Zurb foundation
 
Drupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs PanelsDrupal - Blocks vs Context vs Panels
Drupal - Blocks vs Context vs Panels
 
Creating Dynamic Landing Pages for Drupal with Panels - Webinar
Creating Dynamic Landing Pages for Drupal with Panels - WebinarCreating Dynamic Landing Pages for Drupal with Panels - Webinar
Creating Dynamic Landing Pages for Drupal with Panels - Webinar
 
W pthemes
W pthemesW pthemes
W pthemes
 
Lesson 07 WordPress part 1
Lesson 07   WordPress part 1Lesson 07   WordPress part 1
Lesson 07 WordPress part 1
 
Put A Map On It! Enhanced geolocation in WordPress with Geo Mashup
Put A Map On It! Enhanced geolocation in WordPress with Geo MashupPut A Map On It! Enhanced geolocation in WordPress with Geo Mashup
Put A Map On It! Enhanced geolocation in WordPress with Geo Mashup
 
Intro to Building & Marketing Your Own Website
Intro to Building & Marketing Your Own WebsiteIntro to Building & Marketing Your Own Website
Intro to Building & Marketing Your Own Website
 
Webnet Presentation
Webnet PresentationWebnet Presentation
Webnet Presentation
 
Ui and ux principles
Ui and ux principlesUi and ux principles
Ui and ux principles
 
Drupal Site Building Checklist from DrupalCamp New Jersey
Drupal Site Building Checklist from DrupalCamp New JerseyDrupal Site Building Checklist from DrupalCamp New Jersey
Drupal Site Building Checklist from DrupalCamp New Jersey
 
Creating Responsive Drupal Sites with Zen Grids and the Zen 5 Theme
Creating Responsive Drupal Sites with Zen Grids and the Zen 5 ThemeCreating Responsive Drupal Sites with Zen Grids and the Zen 5 Theme
Creating Responsive Drupal Sites with Zen Grids and the Zen 5 Theme
 
Web Accessibility for the 21st Century
Web Accessibility for the 21st CenturyWeb Accessibility for the 21st Century
Web Accessibility for the 21st Century
 
Build Custom Surveys and Forms Natively in Drupal Gardens
Build Custom Surveys and Forms Natively in Drupal GardensBuild Custom Surveys and Forms Natively in Drupal Gardens
Build Custom Surveys and Forms Natively in Drupal Gardens
 
Leah Root DeSano Portfolio Web Design Wordpress Print Design Joomla
Leah Root DeSano Portfolio Web Design Wordpress Print Design JoomlaLeah Root DeSano Portfolio Web Design Wordpress Print Design Joomla
Leah Root DeSano Portfolio Web Design Wordpress Print Design Joomla
 
Drupal Camp Manila 2014 - Theming with Zen
Drupal Camp Manila 2014 - Theming with ZenDrupal Camp Manila 2014 - Theming with Zen
Drupal Camp Manila 2014 - Theming with Zen
 

Similar to Responsive Development (ZendCon 2012)

The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeThe challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
Caridy Patino
 

Similar to Responsive Development (ZendCon 2012) (20)

CSS3 Media Queries: Mobile Elixir or CSS Snake Oil
CSS3 Media Queries: Mobile Elixir or CSS Snake OilCSS3 Media Queries: Mobile Elixir or CSS Snake Oil
CSS3 Media Queries: Mobile Elixir or CSS Snake Oil
 
There Is No Mobile: An Introduction To Responsive Web Design
There Is No Mobile: An Introduction To Responsive Web DesignThere Is No Mobile: An Introduction To Responsive Web Design
There Is No Mobile: An Introduction To Responsive Web Design
 
Using Responsive Web Design To Make Your Web Work Everywhere
Using Responsive Web Design To Make Your Web Work Everywhere Using Responsive Web Design To Make Your Web Work Everywhere
Using Responsive Web Design To Make Your Web Work Everywhere
 
Responsive Web Design (HeadStart TechTalks)
Responsive Web Design (HeadStart TechTalks)Responsive Web Design (HeadStart TechTalks)
Responsive Web Design (HeadStart TechTalks)
 
Top 10 HTML5 frameworks for effective development in 2016
Top 10 HTML5 frameworks for effective development in 2016Top 10 HTML5 frameworks for effective development in 2016
Top 10 HTML5 frameworks for effective development in 2016
 
Mobile web development
Mobile web development Mobile web development
Mobile web development
 
Responsive web design
Responsive web designResponsive web design
Responsive web design
 
Advancio, Inc. Academy: Responsive Web Design
Advancio, Inc. Academy: Responsive Web DesignAdvancio, Inc. Academy: Responsive Web Design
Advancio, Inc. Academy: Responsive Web Design
 
The Mobile Development Landscape
The Mobile Development LandscapeThe Mobile Development Landscape
The Mobile Development Landscape
 
Mobile Best Practices
Mobile Best PracticesMobile Best Practices
Mobile Best Practices
 
Responsive web designing
Responsive web designingResponsive web designing
Responsive web designing
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web Design
 
Native is easy. Web is essential.
Native is easy. Web is essential.Native is easy. Web is essential.
Native is easy. Web is essential.
 
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - RecifeThe challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
The challenges of building mobile HTML5 applications - FEEC Brazil 2012 - Recife
 
Responsive web design
Responsive web designResponsive web design
Responsive web design
 
Using Responsive Web Design To Make Your Web Work Everywhere
Using Responsive Web Design To Make Your Web Work EverywhereUsing Responsive Web Design To Make Your Web Work Everywhere
Using Responsive Web Design To Make Your Web Work Everywhere
 
Responsive Web Design - Web & PHP Conference - 2013-09-18
Responsive Web Design - Web & PHP Conference - 2013-09-18Responsive Web Design - Web & PHP Conference - 2013-09-18
Responsive Web Design - Web & PHP Conference - 2013-09-18
 
Responsive Web Design
Responsive Web DesignResponsive Web Design
Responsive Web Design
 
CSS3: Using media queries to improve the web site experience
CSS3: Using media queries to improve the web site experienceCSS3: Using media queries to improve the web site experience
CSS3: Using media queries to improve the web site experience
 
Web Programming Assignment
Web Programming AssignmentWeb Programming Assignment
Web Programming Assignment
 

More from Kevin Bruce

Building html5 sites that don't suck
Building html5 sites that don't suck Building html5 sites that don't suck
Building html5 sites that don't suck
Kevin Bruce
 
Web Design Trends - the Do's and Don'ts of using HTML5
Web Design Trends - the Do's and Don'ts of using HTML5Web Design Trends - the Do's and Don'ts of using HTML5
Web Design Trends - the Do's and Don'ts of using HTML5
Kevin Bruce
 

More from Kevin Bruce (6)

Design for Developers SunshinePHP 2017
Design for Developers  SunshinePHP 2017Design for Developers  SunshinePHP 2017
Design for Developers SunshinePHP 2017
 
News From the Front Lines - an update on Front-End Tech
News From the Front Lines - an update on Front-End TechNews From the Front Lines - an update on Front-End Tech
News From the Front Lines - an update on Front-End Tech
 
I Can Magazine- and YOU CAN, TOO! (A Case Study of a Boutique Designer)
I Can Magazine- and YOU CAN, TOO! (A Case Study of a Boutique Designer)I Can Magazine- and YOU CAN, TOO! (A Case Study of a Boutique Designer)
I Can Magazine- and YOU CAN, TOO! (A Case Study of a Boutique Designer)
 
Design trends - from html tables to semantic html5
Design trends - from html tables to semantic html5Design trends - from html tables to semantic html5
Design trends - from html tables to semantic html5
 
Building html5 sites that don't suck
Building html5 sites that don't suck Building html5 sites that don't suck
Building html5 sites that don't suck
 
Web Design Trends - the Do's and Don'ts of using HTML5
Web Design Trends - the Do's and Don'ts of using HTML5Web Design Trends - the Do's and Don'ts of using HTML5
Web Design Trends - the Do's and Don'ts of using HTML5
 

Recently uploaded

+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
?#DUbAI#??##{{(☎️+971_581248768%)**%*]'#abortion pills for sale in dubai@
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
Joaquim Jorge
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
vu2urc
 

Recently uploaded (20)

Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)Powerful Google developer tools for immediate impact! (2023-24 C)
Powerful Google developer tools for immediate impact! (2023-24 C)
 
Exploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone ProcessorsExploring the Future Potential of AI-Enabled Smartphone Processors
Exploring the Future Potential of AI-Enabled Smartphone Processors
 
GenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day PresentationGenCyber Cyber Security Day Presentation
GenCyber Cyber Security Day Presentation
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
How to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected WorkerHow to Troubleshoot Apps for the Modern Connected Worker
How to Troubleshoot Apps for the Modern Connected Worker
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time AutomationFrom Event to Action: Accelerate Your Decision Making with Real-Time Automation
From Event to Action: Accelerate Your Decision Making with Real-Time Automation
 
A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)A Domino Admins Adventures (Engage 2024)
A Domino Admins Adventures (Engage 2024)
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, AdobeApidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
Apidays New York 2024 - Scaling API-first by Ian Reasor and Radu Cotescu, Adobe
 
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data DiscoveryTrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
TrustArc Webinar - Unlock the Power of AI-Driven Data Discovery
 
Histor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slideHistor y of HAM Radio presentation slide
Histor y of HAM Radio presentation slide
 
[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?What Are The Drone Anti-jamming Systems Technology?
What Are The Drone Anti-jamming Systems Technology?
 
Tech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdfTech Trends Report 2024 Future Today Institute.pdf
Tech Trends Report 2024 Future Today Institute.pdf
 

Responsive Development (ZendCon 2012)

  • 1. Musketeers.me Responsive Development Kevin Bruce of Musketeers.me
  • 2. Who Am I? Designer Developer Musketeers.me 2
  • 3. Where I Work Musketeers.me 3
  • 4. Musketeers.me THE Question: Is a responsive site the best way to go for my site?
  • 5. Options iPhone Camera Compass Accelerometer Geolocation Full Responsive Site Dedicated Mobile Site Native Application Musketeers.me 5
  • 6. Full Responsive Site Benefits • One Codebase • Same html file serves all devices Drawbacks • Not completely tailored to any device • Unless you have a process in place, it can take as much time to write as a separate mobile site Musketeers.me 6
  • 7. Dedicated Mobile Site Benefits • Cater to mobile content needs like Location and contact info • Can concentrate on touch-based UI Drawbacks • Completely separate codebase and content to maintain • Studies have shown that a separate “paired-down” site pisses people off. Musketeers.me 7
  • 8. Native Mobile App Benefits • Native access to device hardware • Interface is more responsive Drawbacks • Development cost is high to write and maintain • At least two mobile Operating Systems to write for Musketeers.me 8
  • 9. My Own Personal Decision-Makers Dedicated Native Responsive Site Mobile Site Application • Information • Shopping Cart • Full Web Website Application • Login-Based • Light Interactive Website • Giant Shopping Website Cart Musketeers.me 9
  • 10. Musketeers.me Responsive Design
  • 11. In a Nutshell flexible grid layouts that respond to the size of your browser window (viewport). Musketeers.me 11
  • 12. Flexible Grid is the Key to Responsive Design A flexible grid is made up of fluid columns and rows that use ems and percentages for setting width, height, font-size, image and media sizes. Musketeers.me 12
  • 13. Media Queries Media Queries are a CSS3 feature that was introduced into the modern browser. It is a series of “break points” based on your browser window (or “viewport”) size. Your browser only uses the styles within the breakpoint that matches your viewport size. Of course, it also uses styles outside of any breakpoints as well. Musketeers.me 13
  • 14. Media Queries 1. Use the @import rule to import styles from other style sheets: <div id=”google_whitespace” style=”@import url(style600min.css) screen and (min-width: 600px);”> </div> Musketeers.me 14
  • 15. Media Queries 2. Put media queries directly in the style sheet. This is the most common approach. @media screen and (min-width: 400px) and (orientation: portrait) { #nav li { float: right; } } @media screen and (min-width: 800px) { #nav li { float: left; } } Musketeers.me 15
  • 16. Media Queries 3. Include a query in a linked style sheet’s media attribute: <link rel="stylesheet" type="text/css" media="screen and (max-device-width: 800px)" href="style800.css" /> Musketeers.me 16
  • 17. Mobile First style.css Depending on who you talk body { … } to, mobile-first is the way to go. @media only screen and (min-width: 200px) Design for mobile, serve the mobile mobile breakpoints first and then progressively enhance from there for @media only screen and (min-width: 1020px) larger viewports. tablet Use “min-width” breakpoints so the @media only screen and larger screens inherit styles from the (min-width: 1450px) smaller viewport break points, in desktop effect, cascading up. Musketeers.me 17
  • 18. Mobile Content First The important take-away from mobile-first is “content-first.” Distill your message down to the essentials! Start with the content you would show in your mobile view and add in the Design cruff from there. Also, write semantic markup! Musketeers.me 18
  • 19. Musketeers.me Responsive Development
  • 20. Server Side Help Server side is an alternate, powerful tool to help support your responsive front end strategy. User Agent Detection can tell you if a device is using a mobile browser, as well as “The IE.” Musketeers.me 20
  • 21. Server Side Help Server Side User Agent Detection can help your responsive front end strategy. With it, your code can help mobile and tablet pages by: • Compacting javascript and styles, insert them directly into the html page and serve them as one document, lessening the server trips. Musketeers.me 21
  • 22. Server Side Help Server Side User Agent Detection can help your responsive front end strategy. With it, your code can help mobile and tablet pages by: • Compacting javascript and styles, insert them directly into the html page and serve them as one document, lessening the server trips. • Server touch-based javascript for touch devices and omit unneeded code. Musketeers.me 22
  • 23. Server Side Help Server Side User Agent Detection can help your responsive front end strategy. With it, your code can help mobile and tablet pages by: • Compacting javascript and styles, insert them directly into the html page and serve them as one document, lessening the server trips. • Server touch-based javascript for touch devices and omit unneeded code. • Embed images with Data URIs for mobile (http://css- tricks.com/data-uris/). Musketeers.me 23
  • 24. Server Side Help Server Side User Agent Detection can help your responsive front end strategy. With it, your code can help mobile and tablet pages by: • Compacting javascript and styles, insert them directly into the html page and serve them as one document, lessening the server trips. • Server touch-based javascript for touch devices and omit unneeded code. • Embed images with Data URIs for mobile (http://css- tricks.com/data-uris/). • Serve correctly sized images for the device. Musketeers.me 24
  • 25. Musketeers.me The IE
  • 26. State of IEEEEEEE • IE 6: it sucks, but government still has a lot of internal systems that only work on it, so… • IE 7: Sucks less, but few rely on it for internal systems (see IE 6) • IE 8: really a step in the right direction, but it doesn’t support media queries or html5… and many CSS3 features. • IE 9: This is the big improvement! Standards compliant… sort of (it’s all relative, isn’t it?). HTML5, media queries- all good! • IE 10: reported to be awesome with web standards (really!)… and sooo many people don’t have it yet. Musketeers.me 26
  • 27. IE retrofits IE 8 and below can usually be taught html5 and media queries with the help of a couple of javascripts: 1. Modernizer.js teaches pre-HTML5 browsers to see the new HTML5 tags as block elements. (http://modernizr.com) 2. Respond.js teaches IE what media queries are and how to use them. (https://github.com/scottjehl/Respond) Musketeers.me 27
  • 28. Musketeers.me What can we do with a mobile device?
  • 29. Hardware We Can Access Varies iPhone Android Camera Compass Accelerometer Geolocation Musketeers.me 29
  • 30. Hardware We Can Access Varies HTML5 standards opened up access to much of device hardware. And more and broader support is coming. • Solid support for the accelerometer and GPS in both iOS and Android. • Access to the GPU (WebGL) and audio hardware (Web Audio API). • Access to the camera (HTML Media Capture) is a very new feature and has full support in Android 3.0 and limited support in iOS6 Safari and Chrome. Musketeers.me 30
  • 31. Are we there yet? Facebook’s stint with an html5 app was universally panned. The roars of applause were deafening when the native app was released. So… no, you shouldn’t try to imitate a native app with responsive design. You will most likely fail. Musketeers.me 31
  • 32. However… The one thing Facebook did accomplish was the responsive site was a good test case. Responsive Design is good prototype for the native app. …provided you don’t drive them away in the process. Slap “Beta” on it! Musketeers.me 32
  • 33. Good Resources MOBILE-FIRST http://www.html5rocks.com/en/mobile/responsivedesign/ A NON-RESPONSIVE APPROACH TO BUILDING CROSS-DEVICE WEBAPPS http://www.html5rocks.com/en/mobile/cross-device/ CAPTURING AUDIO & VIDEO IN HTML5 http://www.html5rocks.com/en/tutorials/getusermedia/intro/ CREATING A MOBILE-FIRST RESPONSIVE WEB DESIGN http://www.html5rocks.com/en/mobile/responsivedesign/ CONDITIONAL LOADING FOR RESPONSIVE DESIGN http://24ways.org/2011/conditional-loading-for-responsive-designs Musketeers.me 33
  • 34. Thank You Personal Site: kevinbruce.com Professional Site: musketeers.me Blog: neutralgood.net Twitter: @kevinbruce Rate me: https://joind.in/6866 Musketeers.me 34