SlideShare uma empresa Scribd logo
1 de 19
Nagendra Mahesh
AGENDA
•   What is HTML5?
•   Why HTML5?
•   The HTML5 feature set
•   Demos + Code
•   CSS3 – A (very) brief intro
•   What I will NOT discuss today
•   References
•   HTML + JS + CSS ~= HTML5 !!
•   A new major milestone for web development
•   Focused on web pages web sites web applications
•   Not “one thing” – bunch of features
•   Combined (ongoing) efforts of W3C, WHATWG and many others
•   Eliminates HTML and web framework fragmentation
“The world is moving to HTML5”
                           - Steve Jobs
…because HTML5 provides elegant, pragmatic Solutions to real-
world problems.
               Before

<input type=‚text‛ name=‚email‛>                 HTML5
<input type=‚text‛ name=‚time‛>
                                          <input type=‚email‛>
                 +                        <input type=‚time‛>
  Loads of extra js validation

…because HTML5 is simpler.

                Before

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML           HTML5
4.01 [Transitional | Strict |
Frameset]//EN                                <!DOCTYPE html>
"http://www.w3.org/TR/html4/loose.dtd">
                                           <meta charset=utf-8>
<meta http-equiv="Content-Type"
content="text/html; charset=utf-8">
…because HTML5 has
awesome stuff built-in.

No more buggy plugins
that crash your browser,
gobble resources and
cause security issues.



 …because HTML5 makes
 the web as your platform
 for crazily rich web
 application experiences.

 …because it’s already
 everywhere !!
HTML5 feature categories
First things first… Browser Support??




• For the latest and greatest, check http://caniuse.com
• In code, use Modernizr.js
      if(Modernizr.geolocation) {
               navigator.geolocation.getCurrentPosition();
      } else {
               alert(‘Geolocation not supported’);
      }
Offline/Storage Features
• Key-value pairs in the browser cache
     • LocalStorage API
     • SessionStorage API
…because using cookies = old school.
Use cases: online shopping carts, client-side prefs, UI customizations etc.

• Web SQL Databases
     • Browsers implementing in-memory DB Engines (SQLite etc.)
     • js allows you to write SQL queries !!
     • Save almost all kinds of typed data
     • Secured Data - Datastore access restricted exclusively within same-origin
Use cases: rich offline apps, everything under the sun

• Application cache (appcache)
   • Cache resources (html, js, css, images etc.) in browser -> offline access

• Offline/Online Events
 navigator.onLine();            // true if you are online

 document.body.addEventListener("online", function () {...}
 document.body.addEventListener("offline", function () {...}
File/Hardware Access
• Geolocation - Get the geographical location of the browser
 navigator.geolocation.getCurrentPosition(successCallBack(position));

 function successCallBack(position) {
          generateMap(position.coords.latitude, position.coords.longitude);
 }

Uses GPS, wi-fi access point info, MAC address (Skyhook Wireless)

• Native Drag and Drop

• Filesystem API
    • sandboxed section of native filesystem
window.webkitStorageInfo.requestQuota(); // request quota of ‘n’ bytes for this web app
window.requestFileSystem(); // returns FileSystem object fs (handle)

fs.root.getFile('log.txt', {create: true, exclusive: true}, success(fileEntry){});
fs.root.getDirectory('MyPictures', {create: true}, successCallBack(fileEntry){});

fileEntry.createWriter(); // returns FileWriter object
fileWriter.write(); // writes to file

dirReader = fs.root.createReader(); // returns a DirReader object
dirReader.readEntries(); // read contents of the directory (files and subdirectories)
File/Hardware Access
• Device Control (UserMedia) API
   • control + access input/output devices such as cameras etc.
   • getUserMedia();

• Orientation Physics
   • Accelerometer, etc.
   • window.addEventListener(‘deviceorientation’);

• WebGL (Web Graphics Library)
   • Leveraging GPU (Graphics Processors/3D accelerator cards) in the client machine to
     render mind-blowing graphics
Realtime/Communication
Web Workers
• API for spawning background js threads !!
• async != concurrency
• Web workers can only access a subset of
  all js features (no DOM manipulation)
• Use-cases:
    • Real-time text formatting
    • Number/JSON crunching
    • Background DB operations

WebSockets
• Full-duplex, bi-directional communication over the Web
• Just data, no HTTP headers
• Socket connections between web browser and server
• Use-cases:
    • Multiplayer online games
    • Chat apps
    • Realtime social streams
    • Custom protocol interaction

Notifications API
Semantics and Markup




• New elements and form input types introduced
• More meaningful (semantics) and practically useful
• Help in SEO
Graphics and Multimedia
Canvas API
• a resolution-dependent bitmap canvas which can be used for rendering graphs, game
  graphics, or other visual images on the fly.
• use JavaScript to draw anything you want !!
• <canvas /> element

HTML5 Video
• <video /> element
• Standard way to embed video in a webpage
• Browser support for major formats: H.264, MP4, AVI, OGG etc.

HTML5 Audio
• <audio /> element
• Standard way to embed audio in a webpage
• Browser support for major formats: H.264, MP3, ALAC, WAV etc.
CSS3
Selectors
/* pattern selection */     /* Specific attributes */   /* Negation selection */
.row:nth-child(even) {      input[type="text"] {        :not(.box) {
  background: #dde;           background: #eee;           color: #00c;
}                           }                           }
.row:nth-child(odd) {                                   :not(span) {
  background: white;                                      display: block;
}                                                       }

Rounded Corners (border-radius)

Gradients and shadows (text-shadow and box-shadow)

CSS3 Animations and Transforms

                                           … and lots more.
What I have NOT discussed today…

Orientation                                WebRTC                   <ruby/>
  Physics          PostMessage

                                        3D Canvas
History API                                                        Microdata
                  Web Audio API

                                        requestAnimationFrame
         WebGL
                                                                 Lots of CSS3 stuff
                         Web Intents
        SVG
                                           IndexedDB
                                                                     CORS
                                                                  Cross-Origin
XmlHttpRequest2              HTML Selector API                  Resource Sharing
References




          On the web:             If you want to fork and play with my
                                         html5 playground code:
 http://www.w3schools.com/html5
      http://diveintohtml5.info   https://code.google.com/p/html5-
       http://html5rocks.com                 playground/

Mais conteúdo relacionado

Mais procurados

Web Standards: Fueling Innovation [Web Design World Boston '08]
Web Standards: Fueling Innovation [Web Design World Boston '08]Web Standards: Fueling Innovation [Web Design World Boston '08]
Web Standards: Fueling Innovation [Web Design World Boston '08]Aaron Gustafson
 
HTML5: a quick overview
HTML5: a quick overviewHTML5: a quick overview
HTML5: a quick overviewMark Whitaker
 
HTML5 and CSS3 Techniques You Can Use Today
HTML5 and CSS3 Techniques You Can Use TodayHTML5 and CSS3 Techniques You Can Use Today
HTML5 and CSS3 Techniques You Can Use TodayTodd Anglin
 
Web Development for UX Designers
Web Development for UX DesignersWeb Development for UX Designers
Web Development for UX DesignersAshlimarie
 
WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)Shumpei Shiraishi
 
Usability in the GeoWeb
Usability in the GeoWebUsability in the GeoWeb
Usability in the GeoWebDave Bouwman
 
Dreamweaver CS6, jQuery, PhoneGap, mobile design
Dreamweaver CS6, jQuery, PhoneGap, mobile designDreamweaver CS6, jQuery, PhoneGap, mobile design
Dreamweaver CS6, jQuery, PhoneGap, mobile designDee Sadler
 
HTML5 & Friends
HTML5 & FriendsHTML5 & Friends
HTML5 & FriendsRemy Sharp
 
Doing More with LESS for CSS
Doing More with LESS for CSSDoing More with LESS for CSS
Doing More with LESS for CSSTodd Anglin
 
Building an HTML5 Video Player
Building an HTML5 Video PlayerBuilding an HTML5 Video Player
Building an HTML5 Video PlayerJim Jeffers
 
Getting Started with HTML5 in Tech Com (STC 2012)
Getting Started with HTML5 in Tech Com (STC 2012)Getting Started with HTML5 in Tech Com (STC 2012)
Getting Started with HTML5 in Tech Com (STC 2012)Peter Lubbers
 
HTML5 - Introduction
HTML5 - IntroductionHTML5 - Introduction
HTML5 - IntroductionDavy De Pauw
 
HTML5 Semantics, Accessibility & Forms [Carsonified HTML5 Online Conference]
HTML5 Semantics, Accessibility & Forms [Carsonified HTML5 Online Conference]HTML5 Semantics, Accessibility & Forms [Carsonified HTML5 Online Conference]
HTML5 Semantics, Accessibility & Forms [Carsonified HTML5 Online Conference]Aaron Gustafson
 
New Elements & Features in HTML5
New Elements & Features in HTML5New Elements & Features in HTML5
New Elements & Features in HTML5Jamshid Hashimi
 
HTML5 Mullet: Forms & Input Validation
HTML5 Mullet: Forms & Input ValidationHTML5 Mullet: Forms & Input Validation
HTML5 Mullet: Forms & Input ValidationTodd Anglin
 
An Introduction To HTML5
An Introduction To HTML5An Introduction To HTML5
An Introduction To HTML5Robert Nyman
 
The Rich Standard: Getting Familiar with HTML5
The Rich Standard: Getting Familiar with HTML5The Rich Standard: Getting Familiar with HTML5
The Rich Standard: Getting Familiar with HTML5Todd Anglin
 

Mais procurados (20)

HTML5 JS APIs
HTML5 JS APIsHTML5 JS APIs
HTML5 JS APIs
 
Web Standards: Fueling Innovation [Web Design World Boston '08]
Web Standards: Fueling Innovation [Web Design World Boston '08]Web Standards: Fueling Innovation [Web Design World Boston '08]
Web Standards: Fueling Innovation [Web Design World Boston '08]
 
HTML5: a quick overview
HTML5: a quick overviewHTML5: a quick overview
HTML5: a quick overview
 
Edge of the Web
Edge of the WebEdge of the Web
Edge of the Web
 
HTML5 and CSS3 Techniques You Can Use Today
HTML5 and CSS3 Techniques You Can Use TodayHTML5 and CSS3 Techniques You Can Use Today
HTML5 and CSS3 Techniques You Can Use Today
 
Web Development for UX Designers
Web Development for UX DesignersWeb Development for UX Designers
Web Development for UX Designers
 
WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)WHAT IS HTML5? (at CSS Nite Osaka)
WHAT IS HTML5? (at CSS Nite Osaka)
 
Usability in the GeoWeb
Usability in the GeoWebUsability in the GeoWeb
Usability in the GeoWeb
 
Dreamweaver CS6, jQuery, PhoneGap, mobile design
Dreamweaver CS6, jQuery, PhoneGap, mobile designDreamweaver CS6, jQuery, PhoneGap, mobile design
Dreamweaver CS6, jQuery, PhoneGap, mobile design
 
HTML5 & Friends
HTML5 & FriendsHTML5 & Friends
HTML5 & Friends
 
Doing More with LESS for CSS
Doing More with LESS for CSSDoing More with LESS for CSS
Doing More with LESS for CSS
 
Building an HTML5 Video Player
Building an HTML5 Video PlayerBuilding an HTML5 Video Player
Building an HTML5 Video Player
 
Getting Started with HTML5 in Tech Com (STC 2012)
Getting Started with HTML5 in Tech Com (STC 2012)Getting Started with HTML5 in Tech Com (STC 2012)
Getting Started with HTML5 in Tech Com (STC 2012)
 
HTML5 - Introduction
HTML5 - IntroductionHTML5 - Introduction
HTML5 - Introduction
 
HTML5 Semantics, Accessibility & Forms [Carsonified HTML5 Online Conference]
HTML5 Semantics, Accessibility & Forms [Carsonified HTML5 Online Conference]HTML5 Semantics, Accessibility & Forms [Carsonified HTML5 Online Conference]
HTML5 Semantics, Accessibility & Forms [Carsonified HTML5 Online Conference]
 
New Elements & Features in HTML5
New Elements & Features in HTML5New Elements & Features in HTML5
New Elements & Features in HTML5
 
HTML5
HTML5HTML5
HTML5
 
HTML5 Mullet: Forms & Input Validation
HTML5 Mullet: Forms & Input ValidationHTML5 Mullet: Forms & Input Validation
HTML5 Mullet: Forms & Input Validation
 
An Introduction To HTML5
An Introduction To HTML5An Introduction To HTML5
An Introduction To HTML5
 
The Rich Standard: Getting Familiar with HTML5
The Rich Standard: Getting Familiar with HTML5The Rich Standard: Getting Familiar with HTML5
The Rich Standard: Getting Familiar with HTML5
 

Semelhante a HTML5: An Overview

[2015/2016] HTML5 and CSS3 Refresher
[2015/2016] HTML5 and CSS3 Refresher[2015/2016] HTML5 and CSS3 Refresher
[2015/2016] HTML5 and CSS3 RefresherIvano Malavolta
 
HTML5 & CSS3 refresher for mobile apps
HTML5 & CSS3 refresher for mobile appsHTML5 & CSS3 refresher for mobile apps
HTML5 & CSS3 refresher for mobile appsIvano Malavolta
 
HTML5 and CSS3 refresher
HTML5 and CSS3 refresherHTML5 and CSS3 refresher
HTML5 and CSS3 refresherIvano Malavolta
 
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考えるIt is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考えるSadaaki HIRAI
 
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5Sadaaki HIRAI
 
An Introduction to Microsoft Edge
An Introduction to Microsoft EdgeAn Introduction to Microsoft Edge
An Introduction to Microsoft EdgeChris Love
 
Dive Into HTML5
Dive Into HTML5Dive Into HTML5
Dive Into HTML5Doris Chen
 
WordCamp Thessaloniki2011 The NextWeb
WordCamp Thessaloniki2011 The NextWebWordCamp Thessaloniki2011 The NextWeb
WordCamp Thessaloniki2011 The NextWebGeorge Kanellopoulos
 
The Mobile Web - HTML5 on mobile devices
The Mobile Web - HTML5 on mobile devicesThe Mobile Web - HTML5 on mobile devices
The Mobile Web - HTML5 on mobile devicesWesley Hales
 
About Best friends - HTML, CSS and JS
About Best friends - HTML, CSS and JSAbout Best friends - HTML, CSS and JS
About Best friends - HTML, CSS and JSNaga Harish M
 
Dive into HTML5: SVG and Canvas
Dive into HTML5: SVG and CanvasDive into HTML5: SVG and Canvas
Dive into HTML5: SVG and CanvasDoris Chen
 
html5 an introduction
html5 an introductionhtml5 an introduction
html5 an introductionvrt-medialab
 

Semelhante a HTML5: An Overview (20)

[2015/2016] HTML5 and CSS3 Refresher
[2015/2016] HTML5 and CSS3 Refresher[2015/2016] HTML5 and CSS3 Refresher
[2015/2016] HTML5 and CSS3 Refresher
 
HTML5 & CSS3 refresher for mobile apps
HTML5 & CSS3 refresher for mobile appsHTML5 & CSS3 refresher for mobile apps
HTML5 & CSS3 refresher for mobile apps
 
HTML5 and CSS3 refresher
HTML5 and CSS3 refresherHTML5 and CSS3 refresher
HTML5 and CSS3 refresher
 
Html5 more than just html5 v final
Html5  more than just html5 v finalHtml5  more than just html5 v final
Html5 more than just html5 v final
 
What is HTML5
What is HTML5What is HTML5
What is HTML5
 
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考えるIt is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
It is not HTML5. but ... / HTML5ではないサイトからHTML5を考える
 
HTML5 Refresher
HTML5 RefresherHTML5 Refresher
HTML5 Refresher
 
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
 
An Introduction to Microsoft Edge
An Introduction to Microsoft EdgeAn Introduction to Microsoft Edge
An Introduction to Microsoft Edge
 
Dive Into HTML5
Dive Into HTML5Dive Into HTML5
Dive Into HTML5
 
HTML5: Introduction
HTML5: IntroductionHTML5: Introduction
HTML5: Introduction
 
WordCamp Thessaloniki2011 The NextWeb
WordCamp Thessaloniki2011 The NextWebWordCamp Thessaloniki2011 The NextWeb
WordCamp Thessaloniki2011 The NextWeb
 
The Mobile Web - HTML5 on mobile devices
The Mobile Web - HTML5 on mobile devicesThe Mobile Web - HTML5 on mobile devices
The Mobile Web - HTML5 on mobile devices
 
Word camp nextweb
Word camp nextwebWord camp nextweb
Word camp nextweb
 
Word camp nextweb
Word camp nextwebWord camp nextweb
Word camp nextweb
 
About Best friends - HTML, CSS and JS
About Best friends - HTML, CSS and JSAbout Best friends - HTML, CSS and JS
About Best friends - HTML, CSS and JS
 
Dive into HTML5: SVG and Canvas
Dive into HTML5: SVG and CanvasDive into HTML5: SVG and Canvas
Dive into HTML5: SVG and Canvas
 
html5 an introduction
html5 an introductionhtml5 an introduction
html5 an introduction
 
Html5
Html5Html5
Html5
 
Html 5
Html 5Html 5
Html 5
 

Último

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CVKhem
 
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?Antenna Manufacturer Coco
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024Rafal Los
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfEnterprise Knowledge
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Enterprise Knowledge
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...Martijn de Jong
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘RTylerCroy
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024The Digital Insurer
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024Results
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Igalia
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityPrincipled Technologies
 
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 WorkerThousandEyes
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Scriptwesley chun
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEarley Information Science
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsJoaquim Jorge
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking MenDelhi Call girls
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountPuma Security, LLC
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxKatpro Technologies
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsEnterprise Knowledge
 

Último (20)

Real Time Object Detection Using Open CV
Real Time Object Detection Using Open CVReal Time Object Detection Using Open CV
Real Time Object Detection Using Open CV
 
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?
 
The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024The 7 Things I Know About Cyber Security After 25 Years | April 2024
The 7 Things I Know About Cyber Security After 25 Years | April 2024
 
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdfThe Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
The Role of Taxonomy and Ontology in Semantic Layers - Heather Hedden.pdf
 
Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...Driving Behavioral Change for Information Management through Data-Driven Gree...
Driving Behavioral Change for Information Management through Data-Driven Gree...
 
2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...2024: Domino Containers - The Next Step. News from the Domino Container commu...
2024: Domino Containers - The Next Step. News from the Domino Container commu...
 
🐬 The future of MySQL is Postgres 🐘
🐬  The future of MySQL is Postgres   🐘🐬  The future of MySQL is Postgres   🐘
🐬 The future of MySQL is Postgres 🐘
 
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
Bajaj Allianz Life Insurance Company - Insurer Innovation Award 2024
 
A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024A Call to Action for Generative AI in 2024
A Call to Action for Generative AI in 2024
 
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
Raspberry Pi 5: Challenges and Solutions in Bringing up an OpenGL/Vulkan Driv...
 
Boost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivityBoost PC performance: How more available memory can improve productivity
Boost PC performance: How more available memory can improve productivity
 
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
 
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law DevelopmentsTrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
TrustArc Webinar - Stay Ahead of US State Data Privacy Law Developments
 
Automating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps ScriptAutomating Google Workspace (GWS) & more with Apps Script
Automating Google Workspace (GWS) & more with Apps Script
 
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptxEIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
EIS-Webinar-Prompt-Knowledge-Eng-2024-04-08.pptx
 
Artificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and MythsArtificial Intelligence: Facts and Myths
Artificial Intelligence: Facts and Myths
 
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
08448380779 Call Girls In Diplomatic Enclave Women Seeking Men
 
Breaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path MountBreaking the Kubernetes Kill Chain: Host Path Mount
Breaking the Kubernetes Kill Chain: Host Path Mount
 
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptxFactors to Consider When Choosing Accounts Payable Services Providers.pptx
Factors to Consider When Choosing Accounts Payable Services Providers.pptx
 
IAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI SolutionsIAC 2024 - IA Fast Track to Search Focused AI Solutions
IAC 2024 - IA Fast Track to Search Focused AI Solutions
 

HTML5: An Overview

  • 2. AGENDA • What is HTML5? • Why HTML5? • The HTML5 feature set • Demos + Code • CSS3 – A (very) brief intro • What I will NOT discuss today • References
  • 3.
  • 4. HTML + JS + CSS ~= HTML5 !! • A new major milestone for web development • Focused on web pages web sites web applications • Not “one thing” – bunch of features • Combined (ongoing) efforts of W3C, WHATWG and many others • Eliminates HTML and web framework fragmentation
  • 5. “The world is moving to HTML5” - Steve Jobs
  • 6. …because HTML5 provides elegant, pragmatic Solutions to real- world problems. Before <input type=‚text‛ name=‚email‛> HTML5 <input type=‚text‛ name=‚time‛> <input type=‚email‛> + <input type=‚time‛> Loads of extra js validation …because HTML5 is simpler. Before <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML HTML5 4.01 [Transitional | Strict | Frameset]//EN <!DOCTYPE html> "http://www.w3.org/TR/html4/loose.dtd"> <meta charset=utf-8> <meta http-equiv="Content-Type" content="text/html; charset=utf-8">
  • 7. …because HTML5 has awesome stuff built-in. No more buggy plugins that crash your browser, gobble resources and cause security issues. …because HTML5 makes the web as your platform for crazily rich web application experiences. …because it’s already everywhere !!
  • 9.
  • 10. First things first… Browser Support?? • For the latest and greatest, check http://caniuse.com • In code, use Modernizr.js if(Modernizr.geolocation) { navigator.geolocation.getCurrentPosition(); } else { alert(‘Geolocation not supported’); }
  • 11. Offline/Storage Features • Key-value pairs in the browser cache • LocalStorage API • SessionStorage API …because using cookies = old school. Use cases: online shopping carts, client-side prefs, UI customizations etc. • Web SQL Databases • Browsers implementing in-memory DB Engines (SQLite etc.) • js allows you to write SQL queries !! • Save almost all kinds of typed data • Secured Data - Datastore access restricted exclusively within same-origin Use cases: rich offline apps, everything under the sun • Application cache (appcache) • Cache resources (html, js, css, images etc.) in browser -> offline access • Offline/Online Events navigator.onLine(); // true if you are online document.body.addEventListener("online", function () {...} document.body.addEventListener("offline", function () {...}
  • 12. File/Hardware Access • Geolocation - Get the geographical location of the browser navigator.geolocation.getCurrentPosition(successCallBack(position)); function successCallBack(position) { generateMap(position.coords.latitude, position.coords.longitude); } Uses GPS, wi-fi access point info, MAC address (Skyhook Wireless) • Native Drag and Drop • Filesystem API • sandboxed section of native filesystem window.webkitStorageInfo.requestQuota(); // request quota of ‘n’ bytes for this web app window.requestFileSystem(); // returns FileSystem object fs (handle) fs.root.getFile('log.txt', {create: true, exclusive: true}, success(fileEntry){}); fs.root.getDirectory('MyPictures', {create: true}, successCallBack(fileEntry){}); fileEntry.createWriter(); // returns FileWriter object fileWriter.write(); // writes to file dirReader = fs.root.createReader(); // returns a DirReader object dirReader.readEntries(); // read contents of the directory (files and subdirectories)
  • 13. File/Hardware Access • Device Control (UserMedia) API • control + access input/output devices such as cameras etc. • getUserMedia(); • Orientation Physics • Accelerometer, etc. • window.addEventListener(‘deviceorientation’); • WebGL (Web Graphics Library) • Leveraging GPU (Graphics Processors/3D accelerator cards) in the client machine to render mind-blowing graphics
  • 14. Realtime/Communication Web Workers • API for spawning background js threads !! • async != concurrency • Web workers can only access a subset of all js features (no DOM manipulation) • Use-cases: • Real-time text formatting • Number/JSON crunching • Background DB operations WebSockets • Full-duplex, bi-directional communication over the Web • Just data, no HTTP headers • Socket connections between web browser and server • Use-cases: • Multiplayer online games • Chat apps • Realtime social streams • Custom protocol interaction Notifications API
  • 15. Semantics and Markup • New elements and form input types introduced • More meaningful (semantics) and practically useful • Help in SEO
  • 16. Graphics and Multimedia Canvas API • a resolution-dependent bitmap canvas which can be used for rendering graphs, game graphics, or other visual images on the fly. • use JavaScript to draw anything you want !! • <canvas /> element HTML5 Video • <video /> element • Standard way to embed video in a webpage • Browser support for major formats: H.264, MP4, AVI, OGG etc. HTML5 Audio • <audio /> element • Standard way to embed audio in a webpage • Browser support for major formats: H.264, MP3, ALAC, WAV etc.
  • 17. CSS3 Selectors /* pattern selection */ /* Specific attributes */ /* Negation selection */ .row:nth-child(even) { input[type="text"] { :not(.box) { background: #dde; background: #eee; color: #00c; } } } .row:nth-child(odd) { :not(span) { background: white; display: block; } } Rounded Corners (border-radius) Gradients and shadows (text-shadow and box-shadow) CSS3 Animations and Transforms … and lots more.
  • 18. What I have NOT discussed today… Orientation WebRTC <ruby/> Physics PostMessage 3D Canvas History API Microdata Web Audio API requestAnimationFrame WebGL Lots of CSS3 stuff Web Intents SVG IndexedDB CORS Cross-Origin XmlHttpRequest2 HTML Selector API Resource Sharing
  • 19. References On the web: If you want to fork and play with my html5 playground code: http://www.w3schools.com/html5 http://diveintohtml5.info https://code.google.com/p/html5- http://html5rocks.com playground/