You are previewing The Modern Web.
O'Reilly logo
The Modern Web

Book Description

Peter Gasston's The Modern Web will guide you through the latest and most important tools of device-agnostic web development, including HTML5, CSS3, and JavaScript.

Table of Contents

  1. Advance Praise for <span xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:pls="http://www.w3.org/2005/01/pronunciation-lexicon" xmlns:ssml="http://www.w3.org/2001/10/synthesis" xmlns:svg="http://www.w3.org/2000/svg" class="emphasis"><em>The Modern Web</em></span>
  2. Praise for Peter Gasston’s <span xmlns="http://www.w3.org/1999/xhtml" xmlns:epub="http://www.idpf.org/2007/ops" xmlns:m="http://www.w3.org/1998/Math/MathML" xmlns:pls="http://www.w3.org/2005/01/pronunciation-lexicon" xmlns:ssml="http://www.w3.org/2001/10/synthesis" xmlns:svg="http://www.w3.org/2000/svg" class="emphasis"><em>The Book of CSS3</em></span>
  3. Dedication
  4. About the Author
  5. About the Technical Reviewer
  6. Acknowledgments
  7. Introduction
    1. The Device Landscape
      1. Desktop/Laptop
      2. Mobile
      3. Tablet
      4. TV
      5. The Others
      6. The In Betweeners
    2. The Multi-screen World
    3. Context: What We Don’t Know
      1. Some Context Stereotypes
      2. “Fast” Is the Only Context That Matters
    4. What You’ll Learn
  8. A. Further Reading
  9. 1. The Web Platform
    1. A Quick Note About Terminology
    2. Who You Are and What You Need to Know
    3. Getting Our Terms Straight
    4. The Real HTML5
      1. The HTML5 Template
      2. New Best Practices
    5. CSS3 and Beyond
      1. Vendor-Specific Prefixes
      2. CSS Frameworks and Preprocessors
    6. Browser Support
    7. Test and Test and Test Some More
    8. Summary
  10. B. Further Reading
  11. 2. Structure and Semantics
    1. New Elements in HTML5
      1. What’s the Point?
      2. The Downside of HTML5 Sectioning Elements
    2. WAI-ARIA
    3. The Importance of Semantic Markup
    4. Microformats
    5. RDFa
    6. Microdata
      1. The Microdata API
      2. Microdata, Microformats, and RDFa
      3. Schema.org
      4. Rich Snippets
    7. Data Attributes
      1. The Data Attributes API
      2. jQuery and Data Attributes
      3. Data Attributes in the Wild
    8. Web Components: The Future of Markup?
    9. Summary
  12. C. Further Reading
  13. 3. Device-Responsive CSS
    1. Media Queries
      1. Media Features Based on Dimensions
      2. Combining and Negating Media Queries
      3. A Quick Digression: All About Pixels
      4. Screen Resolution Media Queries
      5. Device Adaptation
      6. Input Mechanism Media Features
      7. Further Media Features
    2. Media Queries in JavaScript
    3. Adaptive vs. Responsive Web Design
      1. The box-sizing Property
      2. Dynamic Calculations on Length Values
    4. Viewport-Relative Length Units
      1. Root-Relative Units
      2. Mobile First and Content Breakpoints
    5. Responsive Design and Replaced Objects
      1. The Image Problem
      2. The HTML5 Responsive Images Solution
    6. Summary
  14. D. Further Reading
  15. 4. New Approaches to CSS Layouts
    1. Multi-columns
      1. Gaps and Rules
      2. Spans and Breaks
    2. Flexbox
      1. Declaring the Flexbox Model
      2. Changing the Content Order
      3. Alignment Inside the Container
      4. Adding Some Flexibility
      5. Wrap and Flow
    3. Grid Layout
      1. Declaring and Defining the Grid
      2. Repeating Grid Lines
      3. Placing Items on the Grid
      4. Alignment and Stacking
      5. The September 2012 Grid Layout Syntax
      6. On the Grid Layout Terminology
      7. Grid Template
    4. The Further Future
    5. Summary
  16. E. Further Reading
  17. 5. Modern JavaScript
    1. New in JavaScript
      1. The async and defer Attributes
      2. The addEventListener Method
        1. The event Object
        2. Removing Event Listeners
      3. The DOMContentLoaded Event
      4. Input Events
        1. Touch Events
        2. Pointer Events
      5. CSS Selectors in JavaScript
      6. The getElementsByClassName() Method
      7. Interacting with Classes
    2. JavaScript Libraries
      1. jQuery
      2. YepNope
      3. Modernizr
      4. Mustache
    3. Polyfills and Shims
    4. Testing and Debugging
    5. Summary
  18. F. Further Reading
  19. 6. Device Apis
    1. Geolocation
    2. Orientation
    3. Fullscreen
    4. Vibration
    5. Battery Status
    6. Network Information
    7. Camera and Microphone
    8. Web Storage
    9. Drag and Drop
    10. Interacting with Files
    11. Mozilla’s Firefox OS and WebAPIs
    12. PhoneGap and Native Wrappers
    13. Summary
  20. G. Further Reading
  21. 7. Images and Graphics
    1. Comparing Vectors and Bitmaps
    2. Scalable Vector Graphics
      1. Anatomy of an SVG Image
      2. Linked SVG Files
        1. SVG Sprites
        2. SVG Sprites with Fragments
      3. Embedded SVG
      4. SVG Filters
      5. The Convergence of SVG and CSS
      6. A Drawback of SVG
    3. The canvas Element
      1. Image Manipulation
      2. WebGL
    4. When to Choose SVG or Canvas
    5. Summary
  22. H. Further Reading
  23. 8. New Forms
    1. New Input Types
    2. New Attributes
      1. autofocus
      2. placeholder
      3. autocomplete
      4. spellcheck
      5. multiple
      6. form
    3. Datalists
    4. On-Screen Controls and Widgets
      1. Numbers
      2. Dates
      3. Color
    5. Displaying Information to the User
      1. progress
      2. meter
      3. output
    6. Client-side Form Validation
    7. The Constraint Validation API
    8. Forms and CSS
    9. Summary
  24. I. Further Reading
  25. 9. Multimedia
    1. The Media Elements
      1. Extra Attributes for the video Element
      2. Multiple Source Files
      3. Fallbacks
      4. Subtitles and Captions
      5. Encoding
    2. Media Fragments
    3. The Media API
      1. Network and Ready States
      2. Extra Properties for Audio and Video
    4. Media Events
    5. Advanced Media Interaction
      1. Web Audio API
      2. WebRTC
    6. Summary
  26. J. Further Reading
  27. 10. Web Apps
    1. Web Apps
      1. Hosted vs. Packaged Apps
        1. Hosted Web Apps
        2. Packaged Web Apps
      2. Manifest Files
        1. The Chrome Web Store
        2. The Firefox Marketplace
      3. W3C Widgets
    2. Hybrid Apps
      1. PhoneGap
        1. Granting Permissions
        2. The PhoneGap API
        3. PhoneGap Events
      2. Titanium
    3. TV Apps
    4. Webinos
    5. Application Cache
      1. Contents of the AppCache File
      2. The Caching Sequence
      3. The AppCache API
    6. Summary
  28. K. Further Reading
  29. 11. The Future
    1. Web Components
      1. Templates
      2. Decorators
        1. Scoped Styles
        2. Scoped Styles and Templates
      3. Custom Elements
      4. The Shadow DOM
      5. Putting It All Together
    2. The Future of CSS
      1. Regions
      2. Exclusions
        1. Exclusions and Grids
        2. Shaped Exclusions
      3. Even Further Future Layouts
        1. Box Alignment
        2. Line Grid
        3. Paged Media
      4. Feature Queries
      5. Cascading Variables
    3. Summary
  30. L. Further Reading
  31. M. Browser Support as of March 2013
    1. The Browsers in Question
    2. Enabling Experimental Features
    3. Chapter 1: The Web Platform
    4. Chapter 2: Structure and Semantics
    5. Chapter 3: Device-Responsive CSS
    6. Chapter 4: New Approaches to CSS Layouts
    7. Chapter 5: Modern JavaScript
    8. Chapter 6: Device APIs
    9. Chapter 7: Images and Graphics
    10. Chapter 8: New Forms
    11. Chapter 9: Multimedia
    12. Chapter 10: Web Apps
    13. Chapter 11: The Future
  32. N. Further Reading
    1. Introduction
    2. Chapter 1: The Web Platform
    3. Chapter 2: Structure and Semantics
    4. Chapter 3: Device-Responsive CSS
    5. Chapter 4: New Approaches to CSS Layouts
    6. Chapter 5: Modern JavaScript
    7. Chapter 6: Device APIs
    8. Chapter 7: Images and Graphics
    9. Chapter 8: New Forms
    10. Chapter 9: Multimedia
    11. Chapter 10: Web Apps
    12. Chapter 11: The Future
  33. Index
  34. About the Author
  35. Copyright