Upgrade to Pro — share decks privately, control downloads, hide ads and more …

Adaptive Systems for Multiple Devices

Simon Collison
September 28, 2011

Adaptive Systems for Multiple Devices

Presented at Hull Digital, November 2010

Simon will explore CSS media queries and other methods for creating incredibly flexible adaptive layouts for varying devices, viewports and orientations.

Simon Collison

September 28, 2011
Tweet

More Decks by Simon Collison

Other Decks in Design

Transcript

  1. The screen brings with it different kinds of challenges for

    visual design, some of which occur exclusively in interactive media. It’s unrealistic to think our old methods can fill in all the gaps, but new interaction patterns and visual languages emerge everyday. These are the building blocks for our new design principles. JASON SANTA MARIA, 2008
  2. • Use one set of files for the website •

    Manipulate the resolution, viewport, and orientation • Deliver 100% of the content • Or, deliver the device-relevant content • Surprise. Delight. Be creative!
  3. The ability to alter the presentation of a website without

    altering its structure should have opened up the floodgates of design creativity. JEREMY KEITH, 2006
  4. Ethan states that a responsive design is composed of three

    distinct parts: 1. Flexible grid. 2. Flexible images. 3. Media queries.
  5. img { width:380px; height:auto; } img { height:auto; max-width:100%; }

    For a Windows fix, see http://unstoppablerobotninja.com/entry/fluid-images
  6. A media query consists of a media type and zero

    or more expressions that check for the conditions of particular media features. Among the media features that can be used in media queries are ‘width’, ‘height’, and ‘color’. By using media queries, presentations can be tailored to a specific range of output devices without changing the content itself. http://www.w3.org/TR/css3-mediaqueries/
  7. @media  (min-­‐device-­‐width:1024px)  and  (max-­‐ width:989px),  screen  and  (max-­‐device-­‐ width:480px),  (max-­‐device-­‐width:480px)

     and   (orientation:landscape),  (min-­‐device-­‐ width:481px)  and  (orientation:portrait)  { div#page  {  width:468px;  }  } 1. Devices with a minimum width of 1,024 pixels and windows with a maximum width of 989 pixels. 2. Screens that have a maximum device width of 480 pixels. 3. Devices with a maximum width of 480 pixels and are also in landscape orientation. 4.Devices with a minimum width of 481 pixels and are also in portrait orientation. 5. When one of the above criteria are met, resize the page division to 468 pixels.
  8. @media  (min-­‐device-­‐width:1024px)  and  (max-­‐ width:509px),  (max-­‐device-­‐width:480px)  and   (orientation:portrait)  {

    div#page  {  width:306px;} With these two queries, the page division shrinks to 306 pixels wide when viewed with: 1. devices with a minimum width of 1,024 pixels and windows with a maximum width of 509 pixels. 2. devices with a maximum width of 480 pixels which are also in landscape orientation.
  9. • Start with mobile! • Use well structured meaningful markup

    • Consider media queries • Progressive enhancement (JavaScript & media queries) • Adapt content appropriately for each device
  10. • Rethink our processes • Be responsive • Progressively enhance

    • Consider the needs of the mobile user • Be brave, be creative!