Course Description

HTML5 is a major revision of the HTML standard. A collection of new features – rich typography, native audio & video, powerful drawing and image manipulation API – allow you to create web pages with unparalleled user experience. Native HTML has many benefits over Flash and enterprise developers will be asked to use it more and more. This class is meant for experienced HTML developers who are already familiar with web site development. They will be able to upgrade their skills to the HTML5 level. Lab exercises are done using plain text editor. This allows you to have a close contact with the HTML5 syntax.

  • Understand the history of HTML5 and current browser support for it
  • Know when to use Flash and when to use HTML5
  • Create meaningful structure for the document using the semantic elements
  • Use the new HTML5 input types
  • Validate form without any JavaScript
  • Draw shapes, images, and text using the canvas element
  • Play back music and videos without requiring a special plug-in using the music and video elements
  • Pinpoint the user’s location using the Geolocation API
  • Store information on the client side using the Web Storage, Web SQL Database, and Indexed Database APIs
  • Build offline applications to allow users to be productive when there’s no Internet connection
  • Build multi-threaded client applications that take better advantage of multi-core machines using the Web Worker API and Messaging API
  • Build push-based applications using the WebSocket API, so the server can initiate communicates with the client



2 days


Target Audience

This course is suitable for Web Developers with a basic knowledge of HTML.


Course Prerequisites

Knowledge of HTML and previous web page design experience.

Many of the new HTML 5 features, such as canvas and geolocation, require extensive use of JavaScript. If you lack basic knowledge of JavaScript, you should consider taking the JavaScript course below.

The above skills are taught in the following courses:

If you have any questions or doubts as to whether you meet the pre-requisites for this course, or indeed are wondering which course best suits you, please consult with us to discuss your suitability for course attendance.


Suggested Follow on Courses

There are a number of options of suitable follow-on courses, depending on your business needs. Please Contact Us for further details.


Course Content


  1. History of HTML5
  2. HTML5 Standards Body
  3. New Features of HTML5
  4. Current Browser Support for HTML5
  5. Detecting Support for HTML5
  6. HTML5 vs. Flash
  7. Replacing Flash with HTML5
  8. Summary


  1. What Is HTML5
  2. HTML5 Goals
  3. HTML Specs, Past and Present
  4. How Is HTML5 Different From HTML4?
  5. HTML5 Is Not Based On SGML
  6. More Differences
  7. HTML5 Defines Required Processing For Invalid Documents
  8. The Doctype Declaration
  9. Semantic Elements
  10. The <aside> Element
  11. Browser Support For HTML5
  12. Summary


  1. Function over Form
  2. HTML4 Layouts
  3. HTML5 Semantic Layouts
  4. Nesting Semantics
  5. Other New Semantic Elements
  6. The <time> Element
  8. The <ruby> and <rt> Elements
  9. The <rp> Element
  10. The <keygen> Element
  11. Summary


  1. The form Attribute
  2. The placeholder Attribute
  3. New Form Field Types
  4. Forms and Validation
  5. The required Attribute
  6. The number input type
  7. The pattern Attribute
  8. The range and date input types
  9. The <datalist> Element
  10. The autofocus and oninput Attributes
  11. HTML5 CSS Pseudo-Classes
  12. Summary


  1. The <canvas> Element
  2. <canvas> vs. <svg>
  3. Browser Support for <canvas>
  4. Creating the Canvas
  5. Using the Context
  6. Using Color
  7. Painting Gradients
  8. Drawing Paths
  9. Painting Patterns
  10. Transformers
  11. Summary


  1. HTML5 Video/Audio Overview
  2. New Elements for Video/Audio
  3. Using the <audio> Element
  4. The <video> Element
  5. Specifying More Than One Audio or Video File
  6. The poster Attribute
  7. Other <audio> and <video> Attributes
  8. JavaScript and Media Elements
  9. Summary


  1. Geolocation Concepts
  2. How Does it Work?
  3. Users Need to Agree!
  4. Geolocation API
  5. Functions and Options
  6. Example
  7. Success Function
  8. Error Function
  9. Options
  10. watchPosition
  11. Summary


  1. Data Storage
  2. Data Storage Options
  3. Web Storage
  4. Programming Interface – Storage/Retrieval
  5. Programming Interface – Enumerating the Values
  6. Programming Interface – Removing Items
  7. Example – Storing a value
  8. Example – Retrieving a value
  9. Example – Listing all the keys
  10. “Expandos”
  11. Storing JavaScript Objects
  12. Retrieving JavaScript Objects
  13. Web SQL Databases
  14. Using a Web SQL Database
  15. Running Queries
  16. Running Queries (cont’d)
  17. Reading Values
  18. IndexedDB
  19. IndexedDB Terminology
  20. Opening a Database
  21. Creating an Object Store
  22. Loading the Store Shelves
  23. Browsing the Shelves
  24. Storage Considerations
  25. Summary


  1. Offline Concepts
  2. The Cache Manifest File
  3. Contents of the Cache Manifest
  4. Serving the Cache Manifest
  5. applicationCache
  6. Summary


  1. Drag and Drop
  2. Drag and Drop Events
  3. Some Example Code
  4. Discussion of Sample Code
  5. Preparing Data to be Dragged
  6. Summary


  1. Communicating Between Components
  2. WebWorkers for MultiThreading
  3. Using a Worker
  4. Sending Data to the Worker
  5. Receiving Data from the Worker
  6. What the Worker Can Do
  7. Using Scripts inside a Worker
  8. SharedWorker
  9. SharedWorkers – Client Side
  10. SharedWorkers – Worker Side
  11. Web Sockets
  12. Web Socket Usage
  13. Some Considerations
  14. Summary

Lab Exercises

Lab 1. Create a Basic HTML5 Layout
Lab 2. New HTML5 Semantic Elements
Lab 3. Add More Semantic Value to Your Page with HTML5
Lab 4. Improve Your Forms Using HTML5
Lab 5. Drawing Using the Canvas Element
Lab 6. Dynamic Drawing Using the Canvas Element
Lab 7. Audio/Video Playback
Lab 8. Geolocation
Lab 9. Web Storage
Lab 10. Web SQL Database


See more Internet Technologies courses