SlideShare uma empresa Scribd logo
1 de 14
Baixar para ler offline
HTML5: Next Generation Web Development
Tilak Joshi
Senior Web Architect
NASA Goddard Space Flight Center (Contractor)
August 17th
2011
Platform Product Manager
What is HTML5?
“HTML5 is a language for structuring and presenting content for the World Wide Web, a core technology of the Internet. It is the fifth
revision of the HTML standard (originally created in 1990 and most recently standardized as HTML4 in 1997[1]
) and as of August 2011[update]
is still under development. Its core aims have been to improve the language with support for the latest multimedia while keeping it easily
readable by humans and consistently understood by computers and devices (web browsers, parsers etc.). HTML5 is intended to subsume
not only HTML4, but XHTML1 and DOM2HTML (particularly JavaScript) as well.[1]
” – Wikipedia
What is HTML5?
HTML5 is the up and coming standard for next generation web development. It reduces focus on syntax and
increases focus on features. It was created by developers and browsers to facilitate web programming and increase
focus on more dynamic content.
Included Features
• New Elements ( <article>,<section>,<aside>,<nav>, etc.)
• Native Audio/Video Support
• Drawing APIs (Canvas, SVG, MathML, WebGL)
• Geolocation
• Drag and Drop
• Web Forms 2.0
• Microdata
• Local Storage
• Web Sockets
• Web Workers
Fun Facts
• HTML5 is the brainchild of WHATWG and was adopted by the W3C after much hesitation
• Apple’s ongoing battle with Adobe was sparked by Apple choosing to support HTML5 over Flash
• Contrary to popular belief, almost all current browsers provide support for most HTML5 features
Official HTML5 Logo
New Elements in HTML5
All new tags maintain the same style and element properties as <div> but have special meaning and possibly
special interpretations by markup readers (crawlers) or browsers. When declaring these tags, in order to maintain
backwards compatibility, style them as display:block in your stylesheet or internal style.
These are most of the more important tags:
• <article> – external content (news articles, blogs, etc)
• <section> – sections of the web page (can contain multiple <article> tags)
• <aside> - content related to, but not part of, the primary content
• <nav>,<menu> - the primary navigation, any subnavigation
• <header> - section before body, at the beginning of the page
• <footer> - section after body, at the end of the page
• <hgroup> - a group of headers (<h1> to <h6> tags)
• <time> - a date or time
• <figure>,<figcaption> - a figure and a caption describing it (could be a video or image)
Native Audio/Video Support
Current versions of browsers support audio/video, basic controls, a poster for video, duration hint, and more. They
allow VP8, H.264, and OGG formats depending on browser, and allow you to specify a codec in the declaration.
Code (Video):
<video id="video1" width="480" height="260" poster=”firstframe.jpg" durationHint=”59" >
<source type="video/webm" src=“vid.webm" />
<source src=“vid.mp4"/>
<source src=“vid.ogv" />
<p>Error: video not supported</p>
</video>
Code (Audio):
<audio src="song.ogg" controls="controls">
Your browser does not support the audio element.
</audio>
Supported Formats (video; audio):
Mozilla Firefox – OGG, VP8; OGG, WAV
Internet Explorer – H.264 natively, OGG and VP8 with manual install; MP3 WAV
Google Chrome – OGG, H.264 (to be discontinued), VP8; OGG, WAV
Apple Safari – H.264 natively, OGG and VP8 with manual install; MP3, WAV
Opera – OGG, VP8; OGG, WAV
Drawing API
HTML5 supports many different APIs for drawing, eliminating the need for Flash, SilverLight, or other third-party
tools. Currently supported APIs include Canvas and SVG. Partially supported APIs include MathML and WebGL.
Canvas:
HTML
<canvas id=”canvas1" width=”600" height="200"> </canvas>
JavaScript
window.onload = function(){
var canvas = document.getElementById("myCanvas");
var context = canvas.getContext("2d");
context.moveTo(100, 150);
context.lineTo(450, 50);
context.lineWidth = 10;
context.strokeStyle = "#ff0000"; // line color
context.stroke();
};
SVG:
HTML
<svg id=”svg1” xmlns="http://www.w3.org/2000/svg">
<circle id=”circle1" cx="50" cy="50" r="50" fill="red" />
</svg>
Geolocation
Geolocation provides the user’s location. This is the closest position the User Agent can obtain, which in the case of a GPS
enabled device is exact, and in the case of non-GPS enabled device is the location from the IP address, closest cell phone
tower, or wireless network connection.
Code:
function get_location() {
navigator.geolocation.getCurrentPosition( handlePosition );
}
function handlePosition(position){
var longitude = position.coords.longitude;
var latitude = position.coords.latitude;
// use this info
}
Properties:
coords.latitude – decimal degrees
coords.longitude – decimal degrees
coords.altitude - meters
coords.accuracy - meters
coords.speed – meters/second
coords.altitudeAccuracy - meters
coords.heading – degrees clockwise from true north
timestamp – Date() Object
Warning:
User has to allow the browser to share their location. It is good practice to not to depend on this data.
Drag and Drop
Drag and Drop is natively allowed by overriding the default browser event of objects snapping back in place.
Code:
HTML
<div id=‘drag1’ draggable=‘true’>I’m Drag1</div>
<div id=‘drag2’ draggable=‘true’>I’m Drag2</div>
<div id=‘dropArea’ ></div>
JavaScript
function allowDrop(e){
if(e.preventDefault){
e.preventDefault();
}
return false;
}
var dropArea = document.getElementById(‘dropArea’);
dropArea.ondragenter = allowDrop;
dropArea.ondragover = allowDrop;
New Events:
ondragstart – when the draggable item begins to get dragged
ondragenter – when the draggable item enters the droppable area
ondragover – when the draggable item is in the droppable area
ondrop – when the draggable item is dropped
Web Forms 2.0
HTML5 has taken the more common recent input fields and officially standardized them. It provides browser built-
in GUI and basic validation as required.
New Input Types:
email – current validation checks for ‘@’ sign and ‘.’
url – current validation checks for ‘.’
number – provides up and down arrows on the gui, and validates for a number
range – provides a slider on the gui, and validates for a number
date (date, month, week, time, datetime, datetime-local) – shows a picker
search – currently behaves like a regular ‘text’ field
color – provides a color picker on the gui
New Input Type Attributes:
min – min for the number (works for number and range types)
max – max for the number (works for number and range types)
step – step increment for the number (works for number and range types)
Notes:
Support is currently limited, but coming soon. It is encouraged to use it with shims and polyfills as support comes soon. There will be
variation in the GUI and validation as each browser can handle the look and feel of the additional displayed features and the exact
validation.
Additional Features
Microdata, Local Storage, and Web Workers are some of the additional features available in HTML5.
Microdata:
Specifies additional markup language, as per the specified namespace, to identify reviews, recipes, authors, businesses, products, and other
information. This is most useful for screen readers like Google’s crawler to read and identify your content more accurately.
Local Storage:
Information can be stored in the browser without using cookies. This is less overhead and easy access to a lot of data in JSON format but it
is not safe for secure data.
Web Workers:
This is a method for running javascript concurrently and making use of multiple processor CPUs.
Additional Features:
WebSockets, native JSON functions, Cross Domain Requests using AJAX
Backwards Compatibility
Polyfills or polyfiller or shim, is a piece of code (or plugin) that provides the technology that you, the developer, expect the
browser to provide natively. Flattening the API landscape if you will. They can use third party technologies like Flash, SilverLight,
or JavaScript and JQuery libraries.
Modernizr:
Modernizr.load({
test: Modernizr.geolocation,
yep : 'geo.js',
nope: 'geo-polyfill.js'
});
WebShims:
WebShims is a JavaScript library built on JQuery that provides polyfills for the most commonly used HTML5 features.
$.webshims.setOptions('canvas', { type: 'flashpro' //excanvas | flash | flashpro });
Notes:
There are polyfills available for every feature that I have covered and many more. These polyfills support browsers starting from IE6+,
Firefox 3+ and more. This is a quick and easy method that increases browser compatibility until all browsers have full support for HTML5.
Future versions of Modernizr 2.0 will have WebShims built in.
508 Compliance
HTML5 does not hinder 508 compliance as everything that is visual does not apply, and everything that is not has
similar fallbacks as HTML4 or XHTML (i.e. title tags, labels for inputs). The more descriptive tags and microdata
allow a possibility for many 508 enhancements in the future.
•All new elements available in HTML5 are the equivalent of HTML divs and can handle the ‘title’ attribute
• The media-rich enhancements are just that, ‘enhancements.’ There should be text counterparts for functionality
• Microdata offers better compliance options in the future
• Better tag structure offers more options for future screen readers for compliance
Extras: CSS3 Additions
New attributes:
• border-image
• border-radius
• @font-family
• box-shadow
• text-shadow
Browser specific attributes:
• -moz (Mozilla Browsers)
• -o (Mozilla Browsers)
• -webkit (Mozilla Browsers)
Questions?

Mais conteúdo relacionado

Semelhante a HTML5: An Introduction To Next Generation Web Development

Wordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The NextwebWordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The Nextweb
George Kanellopoulos
 
WordCamp Thessaloniki2011 The NextWeb
WordCamp Thessaloniki2011 The NextWebWordCamp Thessaloniki2011 The NextWeb
WordCamp Thessaloniki2011 The NextWeb
George Kanellopoulos
 
HTML5 Presentation
HTML5 PresentationHTML5 Presentation
HTML5 Presentation
vs4vijay
 
Familiar Tools, New Possibilities: Leveraging the Power of the Adobe Web Pub...
Familiar Tools, New Possibilities:  Leveraging the Power of the Adobe Web Pub...Familiar Tools, New Possibilities:  Leveraging the Power of the Adobe Web Pub...
Familiar Tools, New Possibilities: Leveraging the Power of the Adobe Web Pub...
John Hartley
 

Semelhante a HTML5: An Introduction To Next Generation Web Development (20)

Html5
Html5Html5
Html5
 
Html5
Html5Html5
Html5
 
Wordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The NextwebWordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The Nextweb
 
HTML5 introduction for beginners
HTML5 introduction for beginnersHTML5 introduction for beginners
HTML5 introduction for beginners
 
WordCamp Thessaloniki2011 The NextWeb
WordCamp Thessaloniki2011 The NextWebWordCamp Thessaloniki2011 The NextWeb
WordCamp Thessaloniki2011 The NextWeb
 
Word camp nextweb
Word camp nextwebWord camp nextweb
Word camp nextweb
 
Word camp nextweb
Word camp nextwebWord camp nextweb
Word camp nextweb
 
Html5
Html5Html5
Html5
 
Html5 Overview
Html5 OverviewHtml5 Overview
Html5 Overview
 
Advanced JavaScript
Advanced JavaScriptAdvanced JavaScript
Advanced JavaScript
 
5. HTML5
5. HTML55. HTML5
5. HTML5
 
Html5 CSS3 jQuery Basic
Html5 CSS3 jQuery BasicHtml5 CSS3 jQuery Basic
Html5 CSS3 jQuery Basic
 
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
 
HTML5 and CSS3 refresher
HTML5 and CSS3 refresherHTML5 and CSS3 refresher
HTML5 and CSS3 refresher
 
HTML5 Refresher
HTML5 RefresherHTML5 Refresher
HTML5 Refresher
 
Echo HTML5
Echo HTML5Echo HTML5
Echo HTML5
 
HTML5 Presentation
HTML5 PresentationHTML5 Presentation
HTML5 Presentation
 
HTML5 & CSS3 refresher for mobile apps
HTML5 & CSS3 refresher for mobile appsHTML5 & CSS3 refresher for mobile apps
HTML5 & CSS3 refresher for mobile apps
 
Familiar Tools, New Possibilities: Leveraging the Power of the Adobe Web Pub...
Familiar Tools, New Possibilities:  Leveraging the Power of the Adobe Web Pub...Familiar Tools, New Possibilities:  Leveraging the Power of the Adobe Web Pub...
Familiar Tools, New Possibilities: Leveraging the Power of the Adobe Web Pub...
 
HTML5 Intoduction for Web Developers
HTML5 Intoduction for Web DevelopersHTML5 Intoduction for Web Developers
HTML5 Intoduction for Web Developers
 

Último

Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Safe Software
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
WSO2
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
panagenda
 

Último (20)

Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot ModelMcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
Mcleodganj Call Girls 🥰 8617370543 Service Offer VIP Hot Model
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
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
 
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers:  A Deep Dive into Serverless Spatial Data and FMECloud Frontiers:  A Deep Dive into Serverless Spatial Data and FME
Cloud Frontiers: A Deep Dive into Serverless Spatial Data and FME
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
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...
 
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​Elevate Developer Efficiency & build GenAI Application with Amazon Q​
Elevate Developer Efficiency & build GenAI Application with Amazon Q​
 
Architecting Cloud Native Applications
Architecting Cloud Native ApplicationsArchitecting Cloud Native Applications
Architecting Cloud Native Applications
 
Why Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire businessWhy Teams call analytics are critical to your entire business
Why Teams call analytics are critical to your entire business
 
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
Apidays New York 2024 - Passkeys: Developing APIs to enable passwordless auth...
 
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ..."I see eyes in my soup": How Delivery Hero implemented the safety system for ...
"I see eyes in my soup": How Delivery Hero implemented the safety system for ...
 
DBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor PresentationDBX First Quarter 2024 Investor Presentation
DBX First Quarter 2024 Investor Presentation
 
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot TakeoffStrategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
Strategize a Smooth Tenant-to-tenant Migration and Copilot Takeoff
 
FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024FWD Group - Insurer Innovation Award 2024
FWD Group - Insurer Innovation Award 2024
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
Web Form Automation for Bonterra Impact Management (fka Social Solutions Apri...
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Six Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal OntologySix Myths about Ontologies: The Basics of Formal Ontology
Six Myths about Ontologies: The Basics of Formal Ontology
 
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemkeProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
ProductAnonymous-April2024-WinProductDiscovery-MelissaKlemke
 

HTML5: An Introduction To Next Generation Web Development

  • 1. HTML5: Next Generation Web Development Tilak Joshi Senior Web Architect NASA Goddard Space Flight Center (Contractor) August 17th 2011 Platform Product Manager
  • 2. What is HTML5? “HTML5 is a language for structuring and presenting content for the World Wide Web, a core technology of the Internet. It is the fifth revision of the HTML standard (originally created in 1990 and most recently standardized as HTML4 in 1997[1] ) and as of August 2011[update] is still under development. Its core aims have been to improve the language with support for the latest multimedia while keeping it easily readable by humans and consistently understood by computers and devices (web browsers, parsers etc.). HTML5 is intended to subsume not only HTML4, but XHTML1 and DOM2HTML (particularly JavaScript) as well.[1] ” – Wikipedia
  • 3. What is HTML5? HTML5 is the up and coming standard for next generation web development. It reduces focus on syntax and increases focus on features. It was created by developers and browsers to facilitate web programming and increase focus on more dynamic content. Included Features • New Elements ( <article>,<section>,<aside>,<nav>, etc.) • Native Audio/Video Support • Drawing APIs (Canvas, SVG, MathML, WebGL) • Geolocation • Drag and Drop • Web Forms 2.0 • Microdata • Local Storage • Web Sockets • Web Workers Fun Facts • HTML5 is the brainchild of WHATWG and was adopted by the W3C after much hesitation • Apple’s ongoing battle with Adobe was sparked by Apple choosing to support HTML5 over Flash • Contrary to popular belief, almost all current browsers provide support for most HTML5 features Official HTML5 Logo
  • 4. New Elements in HTML5 All new tags maintain the same style and element properties as <div> but have special meaning and possibly special interpretations by markup readers (crawlers) or browsers. When declaring these tags, in order to maintain backwards compatibility, style them as display:block in your stylesheet or internal style. These are most of the more important tags: • <article> – external content (news articles, blogs, etc) • <section> – sections of the web page (can contain multiple <article> tags) • <aside> - content related to, but not part of, the primary content • <nav>,<menu> - the primary navigation, any subnavigation • <header> - section before body, at the beginning of the page • <footer> - section after body, at the end of the page • <hgroup> - a group of headers (<h1> to <h6> tags) • <time> - a date or time • <figure>,<figcaption> - a figure and a caption describing it (could be a video or image)
  • 5. Native Audio/Video Support Current versions of browsers support audio/video, basic controls, a poster for video, duration hint, and more. They allow VP8, H.264, and OGG formats depending on browser, and allow you to specify a codec in the declaration. Code (Video): <video id="video1" width="480" height="260" poster=”firstframe.jpg" durationHint=”59" > <source type="video/webm" src=“vid.webm" /> <source src=“vid.mp4"/> <source src=“vid.ogv" /> <p>Error: video not supported</p> </video> Code (Audio): <audio src="song.ogg" controls="controls"> Your browser does not support the audio element. </audio> Supported Formats (video; audio): Mozilla Firefox – OGG, VP8; OGG, WAV Internet Explorer – H.264 natively, OGG and VP8 with manual install; MP3 WAV Google Chrome – OGG, H.264 (to be discontinued), VP8; OGG, WAV Apple Safari – H.264 natively, OGG and VP8 with manual install; MP3, WAV Opera – OGG, VP8; OGG, WAV
  • 6. Drawing API HTML5 supports many different APIs for drawing, eliminating the need for Flash, SilverLight, or other third-party tools. Currently supported APIs include Canvas and SVG. Partially supported APIs include MathML and WebGL. Canvas: HTML <canvas id=”canvas1" width=”600" height="200"> </canvas> JavaScript window.onload = function(){ var canvas = document.getElementById("myCanvas"); var context = canvas.getContext("2d"); context.moveTo(100, 150); context.lineTo(450, 50); context.lineWidth = 10; context.strokeStyle = "#ff0000"; // line color context.stroke(); }; SVG: HTML <svg id=”svg1” xmlns="http://www.w3.org/2000/svg"> <circle id=”circle1" cx="50" cy="50" r="50" fill="red" /> </svg>
  • 7. Geolocation Geolocation provides the user’s location. This is the closest position the User Agent can obtain, which in the case of a GPS enabled device is exact, and in the case of non-GPS enabled device is the location from the IP address, closest cell phone tower, or wireless network connection. Code: function get_location() { navigator.geolocation.getCurrentPosition( handlePosition ); } function handlePosition(position){ var longitude = position.coords.longitude; var latitude = position.coords.latitude; // use this info } Properties: coords.latitude – decimal degrees coords.longitude – decimal degrees coords.altitude - meters coords.accuracy - meters coords.speed – meters/second coords.altitudeAccuracy - meters coords.heading – degrees clockwise from true north timestamp – Date() Object Warning: User has to allow the browser to share their location. It is good practice to not to depend on this data.
  • 8. Drag and Drop Drag and Drop is natively allowed by overriding the default browser event of objects snapping back in place. Code: HTML <div id=‘drag1’ draggable=‘true’>I’m Drag1</div> <div id=‘drag2’ draggable=‘true’>I’m Drag2</div> <div id=‘dropArea’ ></div> JavaScript function allowDrop(e){ if(e.preventDefault){ e.preventDefault(); } return false; } var dropArea = document.getElementById(‘dropArea’); dropArea.ondragenter = allowDrop; dropArea.ondragover = allowDrop; New Events: ondragstart – when the draggable item begins to get dragged ondragenter – when the draggable item enters the droppable area ondragover – when the draggable item is in the droppable area ondrop – when the draggable item is dropped
  • 9. Web Forms 2.0 HTML5 has taken the more common recent input fields and officially standardized them. It provides browser built- in GUI and basic validation as required. New Input Types: email – current validation checks for ‘@’ sign and ‘.’ url – current validation checks for ‘.’ number – provides up and down arrows on the gui, and validates for a number range – provides a slider on the gui, and validates for a number date (date, month, week, time, datetime, datetime-local) – shows a picker search – currently behaves like a regular ‘text’ field color – provides a color picker on the gui New Input Type Attributes: min – min for the number (works for number and range types) max – max for the number (works for number and range types) step – step increment for the number (works for number and range types) Notes: Support is currently limited, but coming soon. It is encouraged to use it with shims and polyfills as support comes soon. There will be variation in the GUI and validation as each browser can handle the look and feel of the additional displayed features and the exact validation.
  • 10. Additional Features Microdata, Local Storage, and Web Workers are some of the additional features available in HTML5. Microdata: Specifies additional markup language, as per the specified namespace, to identify reviews, recipes, authors, businesses, products, and other information. This is most useful for screen readers like Google’s crawler to read and identify your content more accurately. Local Storage: Information can be stored in the browser without using cookies. This is less overhead and easy access to a lot of data in JSON format but it is not safe for secure data. Web Workers: This is a method for running javascript concurrently and making use of multiple processor CPUs. Additional Features: WebSockets, native JSON functions, Cross Domain Requests using AJAX
  • 11. Backwards Compatibility Polyfills or polyfiller or shim, is a piece of code (or plugin) that provides the technology that you, the developer, expect the browser to provide natively. Flattening the API landscape if you will. They can use third party technologies like Flash, SilverLight, or JavaScript and JQuery libraries. Modernizr: Modernizr.load({ test: Modernizr.geolocation, yep : 'geo.js', nope: 'geo-polyfill.js' }); WebShims: WebShims is a JavaScript library built on JQuery that provides polyfills for the most commonly used HTML5 features. $.webshims.setOptions('canvas', { type: 'flashpro' //excanvas | flash | flashpro }); Notes: There are polyfills available for every feature that I have covered and many more. These polyfills support browsers starting from IE6+, Firefox 3+ and more. This is a quick and easy method that increases browser compatibility until all browsers have full support for HTML5. Future versions of Modernizr 2.0 will have WebShims built in.
  • 12. 508 Compliance HTML5 does not hinder 508 compliance as everything that is visual does not apply, and everything that is not has similar fallbacks as HTML4 or XHTML (i.e. title tags, labels for inputs). The more descriptive tags and microdata allow a possibility for many 508 enhancements in the future. •All new elements available in HTML5 are the equivalent of HTML divs and can handle the ‘title’ attribute • The media-rich enhancements are just that, ‘enhancements.’ There should be text counterparts for functionality • Microdata offers better compliance options in the future • Better tag structure offers more options for future screen readers for compliance
  • 13. Extras: CSS3 Additions New attributes: • border-image • border-radius • @font-family • box-shadow • text-shadow Browser specific attributes: • -moz (Mozilla Browsers) • -o (Mozilla Browsers) • -webkit (Mozilla Browsers)