SlideShare uma empresa Scribd logo
1 de 38
OCTOBER 26, 2011 | SLIDE 1
www.realdolmen.com




OCTOBER 26, 2011 | SLIDE 2
WHO AM I?
        Kristof Degrave
        Ingelmunster, Belgium
        www.realdolmen.com
        Web squad leader
        Focus on web
          HTML 5.0, ASP.NET


        www.kristofdegrave.be
        kristof.degrave@realdolmen.com
        about.me/kristofdegrave
        @kristofdegrave


OCTOBER 26, 2011 | SLIDE 3
The foundations

      HTML


OCTOBER 26, 2011 | SLIDE 4
HTML
        Document type
          <!DOCTYPE html>


        HTML5 Mark-up
            Header
            Nav
            Article
            Footer
            Time
            …




OCTOBER 26, 2011 | SLIDE 5
HTML

 HTML 4 structure            HTML 5 structure




OCTOBER 26, 2011 | SLIDE 6
HTML
        Forms
          New input types
                   E-mail, url
                   Spin box, slider
                   Date, DateTime, time
                   Color picker
          Validation
                 Email, url, numeric
                 Required
                 Regex
          Placeholder
          Autofocus




OCTOBER 26, 2011 | SLIDE 7
HTML
        Microdata
          Allows machine-readable data to be embedded
                 in an easy-to-write manner
                 with an unambiguous parsing model
          Uses the DOM structure to present data
          Compatible with numerous other data formats
                 JSON
                 RDF




OCTOBER 26, 2011 | SLIDE 8
HTML
        Canvas 2D context
          Drawing on the browser
          Bitmap based
          Immediate mode
        SVG
          Language for describing 2D-graphics and graphical applications
           in XML
          Vector Based
          “Retained Mode”
        Video & audio
          The ability to play video and audio in the browser




OCTOBER 26, 2011 | SLIDE 9
HTML – VIDEO SAMPLE
 <video id="movie" width="320" height="240" preload controls>
      <source src="pr6.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'>
      <source src="pr6.webm" type='video/webm; codecs="vp8, vorbis"' />
      <source src="pr6.ogv" type='video/ogg; codecs="theora, vorbis"' />
      <object width="320" height="240" type="application/x-shockwave-flash"
      data="flowplayer-3.2.1.swf">
           <param name="movie" value="flowplayer-3.2.1.swf" />
           <param name="allowfullscreen" value="true" />
           <param name="flashvars" value='config={"clip": {"url":
                     "http://wearehugh.com/dih5/pr6.mp4", "autoPlay":false,
                     "autoBuffering":true}}' />
           <p>
                     Download video as
                     <a href="pr6.mp4">MP4</a>,
                     <a href="pr6.webm">WebM</a>, or
                     <a href="pr6.ogv">Ogg</a>.
           </p>
      </object>
 </video>

OCTOBER 26, 2011 | SLIDE 10
VIDEO CODEC SUPPORT

Codecs/container                IE       Firefox   Safari   Chrome     Opera      iPhone      Android
Theora+Vorbis+Ogg                    -    3.5+      ***      5.0+       10.5+          -            -
H.264+AAC+MP4                   9.0+        -      3.0+        -           -        3.0+         2.0+
WebM                            9.0+*     4.0+      ***      6.0+       10.6+          -        2.3+**

*   Internet Explorer 9 will only support WebM “when the user has installed a VP8 codec”
** Although Android 2.3 supports WebM, there are no hardware decoders yet, so battery life is a concern.
*** Safari will play anything that QuickTime can play, but QuickTime only comes with H.264/AAC/MP4 support
    pre-installed.




  OCTOBER 26, 2011 | SLIDE 11
Styling your application

     CSS3


OCTOBER 26, 2011 | SLIDE 12
CSS 3
        Borders
            border-color
            border-image
            border-radius
            box-shadow
        Backgrounds
          background-origin and background-clip
          background-size
          multiple backgrounds
        Color
            HSL colors
            HSLA colors
            opacity
            RGBA colors

OCTOBER 26, 2011 | SLIDE 13
CSS 3
        Text effects
          text-shadow
          text-overflow
          word-wrap
        User-interface
            box-sizing
            resize
            outline
            nav-top, nav-right, nav-bottom, nav-left
        Selectors
          attribute selectors
        Basic box model
          overflow-x, overflow-y


OCTOBER 26, 2011 | SLIDE 14
CSS 3
        Other modules
            media queries
            multi-column layout
            Web fonts
            Speech
            Transformations




OCTOBER 26, 2011 | SLIDE 15
Getting the most out of your web application

     WEB APPS


OCTOBER 26, 2011 | SLIDE 16
WEB APPS - OFFLINE APPLICATIONS
        Online webpages
          Get downloaded
          Then rendered


        Offline Webpages
          Issue: Pages can’t be downloaded


        Solution
          Manifest file
                 Manifest attribute on the html element of each offline enabled page
                 Describes all necessary resources to use the application offline




OCTOBER 26, 2011 | SLIDE 17
WEB APPS - OFFLINE APPLICATIONS
        Offline application lifecycle
         1.     Visit the offline enabled application
         2.     Browser reads the manifest file
         3.     Downloads the resources described in the manifest file
         4.     Copies those files to a local cache
                      Not the httpcache
         5. When every thing is downloaded, the application is ready for
            offline use
         6. Resources automatically updated when changed


        The web application is now on- and offline available.
          Navigate to the url in both cases




OCTOBER 26, 2011 | SLIDE 18
WEB APPS - OFFLINE APPLICATIONS
        Cache Manifest file
          First line of every cache manifest file:
                 CACHE MANIFEST
          The following is devided in 3 parts
                 Explicit section
                        – CACHE
                        – All files in this list will be downloaded and cached
                 Fallback section
                        – FALLBACK
                        – Page that will be displayed when you are trying to reach a page offline
                          that hasn’t been cached
                 Outline whitelist section
                        – NETWORK
                        – Contains recoures that should never be cached (ex. Cgi scritps)




OCTOBER 26, 2011 | SLIDE 19
WEB APPS - OFFLINE APPLICATIONS
        Example

         CACHE MANIFEST
         FALLBACK:
         / /offline.html
         NETWORK:
         *




OCTOBER 26, 2011 | SLIDE 20
WEB APPS - WEB STORAGE
        Key/value pairs
          Key and value are string
        5 MB per domain
        Increase of quota is not allowed
        Durable data
          Persists data beyond Page refresh
        Data is never transmitted to the remote web server
        Storage event
          Occurs when the storage area changes
                 Adding data
                 Deleting data
                 Changing data



OCTOBER 26, 2011 | SLIDE 21
WEB APPS - INDEXED DB
        Advanced key/value data management
        Stores large numbers of objects locally
        Asynchronous and synchronous APIs
        No structured query language (SQL)
          Methods are provide by the API
        Multiple database per domain
        Each database exists out of object stores
          Object stores
                 Mechanism for storing data
          Indexes
                 Searching in data
          Transactions
                 Retrieving and manipulating data


OCTOBER 26, 2011 | SLIDE 22
WEB APPS - INDEXED DB


 Concept                 Relational DB                                 IndexedDB
 Database                Database                                      Database

 Tables                  Tables contain columns and rows               objectStore contains Javascript objects and keys

 Query Mechanism,
                         SQL                                           Cursor APIs, Key Range APIs, and Application Code
 Join, and Filters
                                                                   Lock can happen on database on
 Transaction Types & Lock can happen on databases, tables, or rows VERSION_CHANGE transaction, on an objectStores
 Locks               on READ_WRITE Transactions                    on READ_ONLY and READ_WRITE transactions.
                                                                   There is no object level locking.
                                                                       Transaction creation is explicit. Default is to commit
                     Transaction creation is explicit. Default is to
 Transaction Commits                                                   unless I call abort or there is an exception that is
                     rollback unless I call commit.
                                                                       not caught.
                                                                       Indexes are required to query object properties
 Property Lookups        SQL
                                                                       directly
                                                                       De-normal form and can have multi-valued
 Records/Data            Normal form and single valued properties
                                                                       properties




OCTOBER 26, 2011 | SLIDE 23
WEB APPS - WEB SOCKETS
        Direct communication between client and server
            Chat applications
            Social networks
            Cloud applications
            Online gaming
            …


        Current solutions
          Frequent polling
          Long polling




OCTOBER 26, 2011 | SLIDE 24
WEB APPS - WEB SOCKETS

 Frequent polling                         Long polling


    B                  HTTP Request        B       HTTP Request

                                      S                           S
    r                                      r
                      HTTP Response

                                      e                           e
    o                                      o
                                      r                           r
    w                                      w
                                      v                           v
    s                                      s
                                      e                           e
    e                                      e
                                      r                           r
    r                                      r      HTTP Response




OCTOBER 26, 2011 | SLIDE 25
WEB APPS - WEB SOCKETS
        TCP for the web
        Full duplex
        Connecting with a handshake
        Message
          Begin: 0x00
          Between: data
          End: 0xFF
        Benefits
            Native implemented
            Less throughput
            Performance
            Complexity



OCTOBER 26, 2011 | SLIDE 26
WEB APPS - FILE
        File API
          API for representing file objects
                 programmatically selecting
                 accessing their data
        File API writer
          API for writing to files
        File API Directories and System
          API to navigate file system hierarchies
          Defines a mean to expose sandboxed sections of a users local
           file system




OCTOBER 26, 2011 | SLIDE 27
WEB APPS - MEDIA
        Media Capture API
          Provides access to the device capabilities of
                 Audio capture
                 Image capture
                 Video capture
        HTML Media Capture
          Defines HTML form enhancements that provide access toe the
           Media Capture API




OCTOBER 26, 2011 | SLIDE 28
WEB APPS - COMMUNICATION
        Server-sent event
          Receives push notifications from a server
                 In form of DOM Events
                 Uses HTTP connection
          Possible to work with other push notification schemes
                 Push SMS


        XMLHttpRequest
          Functionality for transferring data
          AJAX




OCTOBER 26, 2011 | SLIDE 29
WEB APPS - COMMUNICATION
        Messaging API
          Provides access to messaging functionality in the device
                 SMS
                 MMS
                 E-mail
        HTML 5 Messaging
          Defines mechanism for communicating between browsing
           contexts
        Web notifications
          API for displaying simple notifications




OCTOBER 26, 2011 | SLIDE 30
WEB APPS - PERFORMANCE
        Web workers
            Executing scripts in the background
            Doesn’t freezes the UI
            Takes advantage of multicores
            Allows thread-like operations with message-passing
        Page visibility API
          Determines if the page is visible
          Visibility changed event
          Purpose: saves battery life
        Request animation frame API
          API for create power efficient and smooth animations
          Determines how many frames per second an animation needs
                 Depending on the display’s refresh rate
                 Only when the page is visible

OCTOBER 26, 2011 | SLIDE 31
WEB APPS – TIMING INFORMATION
        Navigation timing
          Interface to access timing information related to navigation
        Resource timing
          Interface to access timing information related to HTML elements
        User timing
          Measures the performance of the applications
                 Gets access to high precision timestamps
        Performance timeline
          Interface to access timing information related to navigation and
           elements




OCTOBER 26, 2011 | SLIDE 32
WEB APPS – DEVICE INFORMATION
        Network information API
          Interface to access the underlying network information of the
           device
        DeviceOrientation event specification
          Provides information about the physical orientation and motion of
           the device
        Battery status event specification
          Provides information about the battery status of the hosting
           device
        Touch event specification
          A set low level event to handle touch events
                 Single as multi touch
          Also addresses pen-tablet devices



OCTOBER 26, 2011 | SLIDE 33
WEB APPS
        Selector API
          Methodes for retrieving elements from the DOM
        Clipboard API
          Defines clipboard operations
                 Copy, cut, paste
        Contacts API
          Provides access to a user's unified address book
        Calender API
          Defines high level interfaces to obtain readaccess to a user’s
           callender service




OCTOBER 26, 2011 | SLIDE 34
WEB APPS - DEVICE INFORMATION
        Geolocation
          Scripted access to geographical location information
          Get’s information from the hosting device
                   IP address
                   Wireless network connection
                   Cell tower
                   GPS




OCTOBER 26, 2011 | SLIDE 35
CONCLUSION


OCTOBER 26, 2011 | SLIDE 36
CONCLUSION
        Start using it today
        Use fallback mechanisms for older browsers
        Use feature detection instead of browser detection
        Pro’s
            Cross platform
            Cross browser
            Approaches native application experience
            Offline applications
        Contra’s
          Many features still in draft
          Only modern browsers
          JavaScript Driven / Not strong types



OCTOBER 26, 2011 | SLIDE 37
For more information:
 visit our website WWW.REALDOLMEN.COM




 Follow us on:



 Selected presentations are available on:




 THANK YOU                                  Or scan this QR code with your Smartphone to immediately go to the website




OCTOBER 26, 2011 | SLIDE 38

Mais conteúdo relacionado

Mais procurados

Deawsj 7 ppt-2_a
Deawsj 7 ppt-2_aDeawsj 7 ppt-2_a
Deawsj 7 ppt-2_aNiit Care
 
Alfresco Template Feb 2011
Alfresco Template Feb 2011Alfresco Template Feb 2011
Alfresco Template Feb 2011Alfresco4_FR
 
Adobe Flex - Developing Rich Internet Application Workshop Day 2
Adobe Flex - Developing Rich Internet Application Workshop Day 2Adobe Flex - Developing Rich Internet Application Workshop Day 2
Adobe Flex - Developing Rich Internet Application Workshop Day 2Shyamala Prayaga
 
[Java Colombo Meetup] The better java for Java microservices developers
[Java Colombo Meetup] The better java for Java microservices developers[Java Colombo Meetup] The better java for Java microservices developers
[Java Colombo Meetup] The better java for Java microservices developersBallerinalang
 
ASP.NET Tutorial - Presentation 1
ASP.NET Tutorial - Presentation 1ASP.NET Tutorial - Presentation 1
ASP.NET Tutorial - Presentation 1Kumar S
 
Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...SPTechCon
 
Scala introduction
Scala introductionScala introduction
Scala introductionzvikapika
 
Alfresco DevCon 2011. Implementing eGov Portal. Powered by Alfresco and Orbeon
Alfresco DevCon 2011. Implementing eGov Portal. Powered by Alfresco and OrbeonAlfresco DevCon 2011. Implementing eGov Portal. Powered by Alfresco and Orbeon
Alfresco DevCon 2011. Implementing eGov Portal. Powered by Alfresco and OrbeonOksana Kurysheva
 
From XPages Hero to OSGi Guru: Taking the Scary out of Building Extension Lib...
From XPages Hero to OSGi Guru: Taking the Scary out of Building Extension Lib...From XPages Hero to OSGi Guru: Taking the Scary out of Building Extension Lib...
From XPages Hero to OSGi Guru: Taking the Scary out of Building Extension Lib...Paul Withers
 
Flex Introduction
Flex Introduction Flex Introduction
Flex Introduction senthil0809
 

Mais procurados (13)

Deawsj 7 ppt-2_a
Deawsj 7 ppt-2_aDeawsj 7 ppt-2_a
Deawsj 7 ppt-2_a
 
Alfresco Template Feb 2011
Alfresco Template Feb 2011Alfresco Template Feb 2011
Alfresco Template Feb 2011
 
Adobe Flex - Developing Rich Internet Application Workshop Day 2
Adobe Flex - Developing Rich Internet Application Workshop Day 2Adobe Flex - Developing Rich Internet Application Workshop Day 2
Adobe Flex - Developing Rich Internet Application Workshop Day 2
 
[Java Colombo Meetup] The better java for Java microservices developers
[Java Colombo Meetup] The better java for Java microservices developers[Java Colombo Meetup] The better java for Java microservices developers
[Java Colombo Meetup] The better java for Java microservices developers
 
Asp.net basic
Asp.net basicAsp.net basic
Asp.net basic
 
ASP.NET Web form
ASP.NET Web formASP.NET Web form
ASP.NET Web form
 
ASP.NET Tutorial - Presentation 1
ASP.NET Tutorial - Presentation 1ASP.NET Tutorial - Presentation 1
ASP.NET Tutorial - Presentation 1
 
Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
Tutorial, Part 4: SharePoint 101: Jump-Starting the Developer by Rob Windsor ...
 
Asp net
Asp netAsp net
Asp net
 
Scala introduction
Scala introductionScala introduction
Scala introduction
 
Alfresco DevCon 2011. Implementing eGov Portal. Powered by Alfresco and Orbeon
Alfresco DevCon 2011. Implementing eGov Portal. Powered by Alfresco and OrbeonAlfresco DevCon 2011. Implementing eGov Portal. Powered by Alfresco and Orbeon
Alfresco DevCon 2011. Implementing eGov Portal. Powered by Alfresco and Orbeon
 
From XPages Hero to OSGi Guru: Taking the Scary out of Building Extension Lib...
From XPages Hero to OSGi Guru: Taking the Scary out of Building Extension Lib...From XPages Hero to OSGi Guru: Taking the Scary out of Building Extension Lib...
From XPages Hero to OSGi Guru: Taking the Scary out of Building Extension Lib...
 
Flex Introduction
Flex Introduction Flex Introduction
Flex Introduction
 

Destaque

Web若手エンジニアの会(仮)
Web若手エンジニアの会(仮)Web若手エンジニアの会(仮)
Web若手エンジニアの会(仮)Naoyuki Kataoka
 
レンタルサーバで今すぐ始めるWEB開発
レンタルサーバで今すぐ始めるWEB開発レンタルサーバで今すぐ始めるWEB開発
レンタルサーバで今すぐ始めるWEB開発Naoyuki Kataoka
 
Objective-CのBlocksの循環参照に関する僕なりのベストプラクティス
 Objective-CのBlocksの循環参照に関する僕なりのベストプラクティス Objective-CのBlocksの循環参照に関する僕なりのベストプラクティス
Objective-CのBlocksの循環参照に関する僕なりのベストプラクティスNaoyuki Kataoka
 
Can you keep_a_secret
Can you keep_a_secretCan you keep_a_secret
Can you keep_a_secretjames3085
 
成長する組織を支えるシロクの自動化
成長する組織を支えるシロクの自動化成長する組織を支えるシロクの自動化
成長する組織を支えるシロクの自動化Naoyuki Kataoka
 

Destaque (6)

Web若手エンジニアの会(仮)
Web若手エンジニアの会(仮)Web若手エンジニアの会(仮)
Web若手エンジニアの会(仮)
 
レンタルサーバで今すぐ始めるWEB開発
レンタルサーバで今すぐ始めるWEB開発レンタルサーバで今すぐ始めるWEB開発
レンタルサーバで今すぐ始めるWEB開発
 
Html 5.0
Html 5.0Html 5.0
Html 5.0
 
Objective-CのBlocksの循環参照に関する僕なりのベストプラクティス
 Objective-CのBlocksの循環参照に関する僕なりのベストプラクティス Objective-CのBlocksの循環参照に関する僕なりのベストプラクティス
Objective-CのBlocksの循環参照に関する僕なりのベストプラクティス
 
Can you keep_a_secret
Can you keep_a_secretCan you keep_a_secret
Can you keep_a_secret
 
成長する組織を支えるシロクの自動化
成長する組織を支えるシロクの自動化成長する組織を支えるシロクの自動化
成長する組織を支えるシロクの自動化
 

Semelhante a HTML5: A complete overview

The web as it should be
The web as it should beThe web as it should be
The web as it should bethebeebs
 
Next Generation Web Attacks – HTML 5, DOM(L3) and XHR(L2)
Next Generation Web Attacks – HTML 5, DOM(L3) and XHR(L2)Next Generation Web Attacks – HTML 5, DOM(L3) and XHR(L2)
Next Generation Web Attacks – HTML 5, DOM(L3) and XHR(L2)Shreeraj Shah
 
Intro to Rails Give Camp Atlanta
Intro to Rails Give Camp AtlantaIntro to Rails Give Camp Atlanta
Intro to Rails Give Camp AtlantaJason Noble
 
iPhone Web Development and Ruby On Rails
iPhone Web Development and Ruby On RailsiPhone Web Development and Ruby On Rails
iPhone Web Development and Ruby On RailsJose de Leon
 
A Microsoft primer for PHP devs
A Microsoft primer for PHP devsA Microsoft primer for PHP devs
A Microsoft primer for PHP devsguest0a62e8
 
WebSphere Portal Technical Overview
WebSphere Portal Technical OverviewWebSphere Portal Technical Overview
WebSphere Portal Technical OverviewVincent Perrin
 
IBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClassIBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClassPaul Withers
 
HTML5 Programming
HTML5 ProgrammingHTML5 Programming
HTML5 Programminghotrannam
 
Lift web framework
Lift web frameworkLift web framework
Lift web frameworkPetr Hošek
 
Introduction To J Boss Seam
Introduction To J Boss SeamIntroduction To J Boss Seam
Introduction To J Boss Seamashishkulkarni
 
Intro to .NET for Government Developers
Intro to .NET for Government DevelopersIntro to .NET for Government Developers
Intro to .NET for Government DevelopersFrank La Vigne
 
Building Rich Internet Apps with Silverlight 2
Building Rich Internet Apps with Silverlight 2Building Rich Internet Apps with Silverlight 2
Building Rich Internet Apps with Silverlight 2Microsoft Iceland
 
Web API or WCF - An Architectural Comparison
Web API or WCF - An Architectural ComparisonWeb API or WCF - An Architectural Comparison
Web API or WCF - An Architectural ComparisonAdnan Masood
 
Cloud Native Application Development-build fast, low TCO, scalable & agile so...
Cloud Native Application Development-build fast, low TCO, scalable & agile so...Cloud Native Application Development-build fast, low TCO, scalable & agile so...
Cloud Native Application Development-build fast, low TCO, scalable & agile so...Lucas Jellema
 
Cloud Native Application Development - build fast, cheap, scalable and agile ...
Cloud Native Application Development - build fast, cheap, scalable and agile ...Cloud Native Application Development - build fast, cheap, scalable and agile ...
Cloud Native Application Development - build fast, cheap, scalable and agile ...Lucas Jellema
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentationdimuthu22
 
Local Storage for Web Applications
Local Storage for Web ApplicationsLocal Storage for Web Applications
Local Storage for Web ApplicationsMarkku Laine
 
Carlos Amador .Net Portfolio
Carlos Amador .Net PortfolioCarlos Amador .Net Portfolio
Carlos Amador .Net PortfolioCMA_SlideShare
 

Semelhante a HTML5: A complete overview (20)

The web as it should be
The web as it should beThe web as it should be
The web as it should be
 
Intro lift
Intro liftIntro lift
Intro lift
 
Next Generation Web Attacks – HTML 5, DOM(L3) and XHR(L2)
Next Generation Web Attacks – HTML 5, DOM(L3) and XHR(L2)Next Generation Web Attacks – HTML 5, DOM(L3) and XHR(L2)
Next Generation Web Attacks – HTML 5, DOM(L3) and XHR(L2)
 
Intro to Rails Give Camp Atlanta
Intro to Rails Give Camp AtlantaIntro to Rails Give Camp Atlanta
Intro to Rails Give Camp Atlanta
 
iPhone Web Development and Ruby On Rails
iPhone Web Development and Ruby On RailsiPhone Web Development and Ruby On Rails
iPhone Web Development and Ruby On Rails
 
A Microsoft primer for PHP devs
A Microsoft primer for PHP devsA Microsoft primer for PHP devs
A Microsoft primer for PHP devs
 
WebSphere Portal Technical Overview
WebSphere Portal Technical OverviewWebSphere Portal Technical Overview
WebSphere Portal Technical Overview
 
IBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClassIBM Think Session 8598 Domino and JavaScript Development MasterClass
IBM Think Session 8598 Domino and JavaScript Development MasterClass
 
HTML5 Programming
HTML5 ProgrammingHTML5 Programming
HTML5 Programming
 
Lift web framework
Lift web frameworkLift web framework
Lift web framework
 
Introduction To J Boss Seam
Introduction To J Boss SeamIntroduction To J Boss Seam
Introduction To J Boss Seam
 
Intro to .NET for Government Developers
Intro to .NET for Government DevelopersIntro to .NET for Government Developers
Intro to .NET for Government Developers
 
Building Rich Internet Apps with Silverlight 2
Building Rich Internet Apps with Silverlight 2Building Rich Internet Apps with Silverlight 2
Building Rich Internet Apps with Silverlight 2
 
Web API or WCF - An Architectural Comparison
Web API or WCF - An Architectural ComparisonWeb API or WCF - An Architectural Comparison
Web API or WCF - An Architectural Comparison
 
Cloud Native Application Development-build fast, low TCO, scalable & agile so...
Cloud Native Application Development-build fast, low TCO, scalable & agile so...Cloud Native Application Development-build fast, low TCO, scalable & agile so...
Cloud Native Application Development-build fast, low TCO, scalable & agile so...
 
Cloud Native Application Development - build fast, cheap, scalable and agile ...
Cloud Native Application Development - build fast, cheap, scalable and agile ...Cloud Native Application Development - build fast, cheap, scalable and agile ...
Cloud Native Application Development - build fast, cheap, scalable and agile ...
 
ASP.NET Presentation
ASP.NET PresentationASP.NET Presentation
ASP.NET Presentation
 
Local Storage for Web Applications
Local Storage for Web ApplicationsLocal Storage for Web Applications
Local Storage for Web Applications
 
Carlos Amador .Net Portfolio
Carlos Amador .Net PortfolioCarlos Amador .Net Portfolio
Carlos Amador .Net Portfolio
 
Docker Kubernetes Istio
Docker Kubernetes IstioDocker Kubernetes Istio
Docker Kubernetes Istio
 

Último

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slidespraypatel2
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure servicePooja Nehwal
 
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
 
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 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
 
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
 
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]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdfhans926745
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024The Digital Insurer
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Allon Mureinik
 
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
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking MenDelhi Call girls
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024The Digital Insurer
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptxHampshireHUG
 
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
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Paola De la Torre
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsMaria Levchenko
 
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
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...apidays
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...Neo4j
 

Último (20)

Slack Application Development 101 Slides
Slack Application Development 101 SlidesSlack Application Development 101 Slides
Slack Application Development 101 Slides
 
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure serviceWhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
WhatsApp 9892124323 ✓Call Girls In Kalyan ( Mumbai ) secure service
 
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
 
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 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
 
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
 
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]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf[2024]Digital Global Overview Report 2024 Meltwater.pdf
[2024]Digital Global Overview Report 2024 Meltwater.pdf
 
Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024Partners Life - Insurer Innovation Award 2024
Partners Life - Insurer Innovation Award 2024
 
Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)Injustice - Developers Among Us (SciFiDevCon 2024)
Injustice - Developers Among Us (SciFiDevCon 2024)
 
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
 
08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men08448380779 Call Girls In Friends Colony Women Seeking Men
08448380779 Call Girls In Friends Colony Women Seeking Men
 
Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024Finology Group – Insurtech Innovation Award 2024
Finology Group – Insurtech Innovation Award 2024
 
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
04-2024-HHUG-Sales-and-Marketing-Alignment.pptx
 
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
 
Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101Salesforce Community Group Quito, Salesforce 101
Salesforce Community Group Quito, Salesforce 101
 
Handwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed textsHandwritten Text Recognition for manuscripts and early printed texts
Handwritten Text Recognition for manuscripts and early printed texts
 
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
 
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
Apidays Singapore 2024 - Building Digital Trust in a Digital Economy by Veron...
 
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...Workshop - Best of Both Worlds_ Combine  KG and Vector search for  enhanced R...
Workshop - Best of Both Worlds_ Combine KG and Vector search for enhanced R...
 

HTML5: A complete overview

  • 1. OCTOBER 26, 2011 | SLIDE 1
  • 3. WHO AM I?  Kristof Degrave  Ingelmunster, Belgium  www.realdolmen.com  Web squad leader  Focus on web  HTML 5.0, ASP.NET  www.kristofdegrave.be  kristof.degrave@realdolmen.com  about.me/kristofdegrave  @kristofdegrave OCTOBER 26, 2011 | SLIDE 3
  • 4. The foundations HTML OCTOBER 26, 2011 | SLIDE 4
  • 5. HTML  Document type  <!DOCTYPE html>  HTML5 Mark-up  Header  Nav  Article  Footer  Time  … OCTOBER 26, 2011 | SLIDE 5
  • 6. HTML HTML 4 structure HTML 5 structure OCTOBER 26, 2011 | SLIDE 6
  • 7. HTML  Forms  New input types  E-mail, url  Spin box, slider  Date, DateTime, time  Color picker  Validation  Email, url, numeric  Required  Regex  Placeholder  Autofocus OCTOBER 26, 2011 | SLIDE 7
  • 8. HTML  Microdata  Allows machine-readable data to be embedded  in an easy-to-write manner  with an unambiguous parsing model  Uses the DOM structure to present data  Compatible with numerous other data formats  JSON  RDF OCTOBER 26, 2011 | SLIDE 8
  • 9. HTML  Canvas 2D context  Drawing on the browser  Bitmap based  Immediate mode  SVG  Language for describing 2D-graphics and graphical applications in XML  Vector Based  “Retained Mode”  Video & audio  The ability to play video and audio in the browser OCTOBER 26, 2011 | SLIDE 9
  • 10. HTML – VIDEO SAMPLE <video id="movie" width="320" height="240" preload controls> <source src="pr6.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'> <source src="pr6.webm" type='video/webm; codecs="vp8, vorbis"' /> <source src="pr6.ogv" type='video/ogg; codecs="theora, vorbis"' /> <object width="320" height="240" type="application/x-shockwave-flash" data="flowplayer-3.2.1.swf"> <param name="movie" value="flowplayer-3.2.1.swf" /> <param name="allowfullscreen" value="true" /> <param name="flashvars" value='config={"clip": {"url": "http://wearehugh.com/dih5/pr6.mp4", "autoPlay":false, "autoBuffering":true}}' /> <p> Download video as <a href="pr6.mp4">MP4</a>, <a href="pr6.webm">WebM</a>, or <a href="pr6.ogv">Ogg</a>. </p> </object> </video> OCTOBER 26, 2011 | SLIDE 10
  • 11. VIDEO CODEC SUPPORT Codecs/container IE Firefox Safari Chrome Opera iPhone Android Theora+Vorbis+Ogg - 3.5+ *** 5.0+ 10.5+ - - H.264+AAC+MP4 9.0+ - 3.0+ - - 3.0+ 2.0+ WebM 9.0+* 4.0+ *** 6.0+ 10.6+ - 2.3+** * Internet Explorer 9 will only support WebM “when the user has installed a VP8 codec” ** Although Android 2.3 supports WebM, there are no hardware decoders yet, so battery life is a concern. *** Safari will play anything that QuickTime can play, but QuickTime only comes with H.264/AAC/MP4 support pre-installed. OCTOBER 26, 2011 | SLIDE 11
  • 12. Styling your application CSS3 OCTOBER 26, 2011 | SLIDE 12
  • 13. CSS 3  Borders  border-color  border-image  border-radius  box-shadow  Backgrounds  background-origin and background-clip  background-size  multiple backgrounds  Color  HSL colors  HSLA colors  opacity  RGBA colors OCTOBER 26, 2011 | SLIDE 13
  • 14. CSS 3  Text effects  text-shadow  text-overflow  word-wrap  User-interface  box-sizing  resize  outline  nav-top, nav-right, nav-bottom, nav-left  Selectors  attribute selectors  Basic box model  overflow-x, overflow-y OCTOBER 26, 2011 | SLIDE 14
  • 15. CSS 3  Other modules  media queries  multi-column layout  Web fonts  Speech  Transformations OCTOBER 26, 2011 | SLIDE 15
  • 16. Getting the most out of your web application WEB APPS OCTOBER 26, 2011 | SLIDE 16
  • 17. WEB APPS - OFFLINE APPLICATIONS  Online webpages  Get downloaded  Then rendered  Offline Webpages  Issue: Pages can’t be downloaded  Solution  Manifest file  Manifest attribute on the html element of each offline enabled page  Describes all necessary resources to use the application offline OCTOBER 26, 2011 | SLIDE 17
  • 18. WEB APPS - OFFLINE APPLICATIONS  Offline application lifecycle 1. Visit the offline enabled application 2. Browser reads the manifest file 3. Downloads the resources described in the manifest file 4. Copies those files to a local cache  Not the httpcache 5. When every thing is downloaded, the application is ready for offline use 6. Resources automatically updated when changed  The web application is now on- and offline available.  Navigate to the url in both cases OCTOBER 26, 2011 | SLIDE 18
  • 19. WEB APPS - OFFLINE APPLICATIONS  Cache Manifest file  First line of every cache manifest file:  CACHE MANIFEST  The following is devided in 3 parts  Explicit section – CACHE – All files in this list will be downloaded and cached  Fallback section – FALLBACK – Page that will be displayed when you are trying to reach a page offline that hasn’t been cached  Outline whitelist section – NETWORK – Contains recoures that should never be cached (ex. Cgi scritps) OCTOBER 26, 2011 | SLIDE 19
  • 20. WEB APPS - OFFLINE APPLICATIONS  Example CACHE MANIFEST FALLBACK: / /offline.html NETWORK: * OCTOBER 26, 2011 | SLIDE 20
  • 21. WEB APPS - WEB STORAGE  Key/value pairs  Key and value are string  5 MB per domain  Increase of quota is not allowed  Durable data  Persists data beyond Page refresh  Data is never transmitted to the remote web server  Storage event  Occurs when the storage area changes  Adding data  Deleting data  Changing data OCTOBER 26, 2011 | SLIDE 21
  • 22. WEB APPS - INDEXED DB  Advanced key/value data management  Stores large numbers of objects locally  Asynchronous and synchronous APIs  No structured query language (SQL)  Methods are provide by the API  Multiple database per domain  Each database exists out of object stores  Object stores  Mechanism for storing data  Indexes  Searching in data  Transactions  Retrieving and manipulating data OCTOBER 26, 2011 | SLIDE 22
  • 23. WEB APPS - INDEXED DB Concept Relational DB IndexedDB Database Database Database Tables Tables contain columns and rows objectStore contains Javascript objects and keys Query Mechanism, SQL Cursor APIs, Key Range APIs, and Application Code Join, and Filters Lock can happen on database on Transaction Types & Lock can happen on databases, tables, or rows VERSION_CHANGE transaction, on an objectStores Locks on READ_WRITE Transactions on READ_ONLY and READ_WRITE transactions. There is no object level locking. Transaction creation is explicit. Default is to commit Transaction creation is explicit. Default is to Transaction Commits unless I call abort or there is an exception that is rollback unless I call commit. not caught. Indexes are required to query object properties Property Lookups SQL directly De-normal form and can have multi-valued Records/Data Normal form and single valued properties properties OCTOBER 26, 2011 | SLIDE 23
  • 24. WEB APPS - WEB SOCKETS  Direct communication between client and server  Chat applications  Social networks  Cloud applications  Online gaming  …  Current solutions  Frequent polling  Long polling OCTOBER 26, 2011 | SLIDE 24
  • 25. WEB APPS - WEB SOCKETS Frequent polling Long polling B HTTP Request B HTTP Request S S r r HTTP Response e e o o r r w w v v s s e e e e r r r r HTTP Response OCTOBER 26, 2011 | SLIDE 25
  • 26. WEB APPS - WEB SOCKETS  TCP for the web  Full duplex  Connecting with a handshake  Message  Begin: 0x00  Between: data  End: 0xFF  Benefits  Native implemented  Less throughput  Performance  Complexity OCTOBER 26, 2011 | SLIDE 26
  • 27. WEB APPS - FILE  File API  API for representing file objects  programmatically selecting  accessing their data  File API writer  API for writing to files  File API Directories and System  API to navigate file system hierarchies  Defines a mean to expose sandboxed sections of a users local file system OCTOBER 26, 2011 | SLIDE 27
  • 28. WEB APPS - MEDIA  Media Capture API  Provides access to the device capabilities of  Audio capture  Image capture  Video capture  HTML Media Capture  Defines HTML form enhancements that provide access toe the Media Capture API OCTOBER 26, 2011 | SLIDE 28
  • 29. WEB APPS - COMMUNICATION  Server-sent event  Receives push notifications from a server  In form of DOM Events  Uses HTTP connection  Possible to work with other push notification schemes  Push SMS  XMLHttpRequest  Functionality for transferring data  AJAX OCTOBER 26, 2011 | SLIDE 29
  • 30. WEB APPS - COMMUNICATION  Messaging API  Provides access to messaging functionality in the device  SMS  MMS  E-mail  HTML 5 Messaging  Defines mechanism for communicating between browsing contexts  Web notifications  API for displaying simple notifications OCTOBER 26, 2011 | SLIDE 30
  • 31. WEB APPS - PERFORMANCE  Web workers  Executing scripts in the background  Doesn’t freezes the UI  Takes advantage of multicores  Allows thread-like operations with message-passing  Page visibility API  Determines if the page is visible  Visibility changed event  Purpose: saves battery life  Request animation frame API  API for create power efficient and smooth animations  Determines how many frames per second an animation needs  Depending on the display’s refresh rate  Only when the page is visible OCTOBER 26, 2011 | SLIDE 31
  • 32. WEB APPS – TIMING INFORMATION  Navigation timing  Interface to access timing information related to navigation  Resource timing  Interface to access timing information related to HTML elements  User timing  Measures the performance of the applications  Gets access to high precision timestamps  Performance timeline  Interface to access timing information related to navigation and elements OCTOBER 26, 2011 | SLIDE 32
  • 33. WEB APPS – DEVICE INFORMATION  Network information API  Interface to access the underlying network information of the device  DeviceOrientation event specification  Provides information about the physical orientation and motion of the device  Battery status event specification  Provides information about the battery status of the hosting device  Touch event specification  A set low level event to handle touch events  Single as multi touch  Also addresses pen-tablet devices OCTOBER 26, 2011 | SLIDE 33
  • 34. WEB APPS  Selector API  Methodes for retrieving elements from the DOM  Clipboard API  Defines clipboard operations  Copy, cut, paste  Contacts API  Provides access to a user's unified address book  Calender API  Defines high level interfaces to obtain readaccess to a user’s callender service OCTOBER 26, 2011 | SLIDE 34
  • 35. WEB APPS - DEVICE INFORMATION  Geolocation  Scripted access to geographical location information  Get’s information from the hosting device  IP address  Wireless network connection  Cell tower  GPS OCTOBER 26, 2011 | SLIDE 35
  • 37. CONCLUSION  Start using it today  Use fallback mechanisms for older browsers  Use feature detection instead of browser detection  Pro’s  Cross platform  Cross browser  Approaches native application experience  Offline applications  Contra’s  Many features still in draft  Only modern browsers  JavaScript Driven / Not strong types OCTOBER 26, 2011 | SLIDE 37
  • 38. For more information: visit our website WWW.REALDOLMEN.COM Follow us on: Selected presentations are available on: THANK YOU Or scan this QR code with your Smartphone to immediately go to the website OCTOBER 26, 2011 | SLIDE 38

Notas do Editor

  1. Important toadd type to the source elements: This way the browser candetermineifitcanplay it. In case he can’t, he won’t download the file. Ifyoudon’tadd the type, you’re browser will download itandtrytoplayit3 source elements with different codes for maximum compatibility.Mp4 first becauseiOSdoesn’t support multiple source elements, so the otheroneswillbeignored. Fixed in iOS4The object element serves as fallbackif the video tag isn’tsupported. (Flash/SL/…)
  2. all manifest files are divided into three parts: the “explicit” section, the “fallback” section, and the “online whitelist” section. Each section has a header, on its own line. If the manifest file doesn’t have any section headers, all the listed resources are implicitly in the “explicit” section.Q: Do I need to list my HTML pages in my cache manifest?A: Yes and no. If your entire web application is contained in a single page, just make sure that page points to the cache manifest using the manifest attribute. When you navigate to an HTML page with a manifest attribute, the page itself is assumed to be part of the web application, so you don’t need to list it in the manifest file itself. However, if your web application spans multiple pages, you should list all of the HTML pages in the manifest file, otherwise the browser would not know that there are other HTML pages that need to be downloaded and cached
  3. Look at the fallback section. The fallback section in this cache manifest only has a single line. The first part of the line (before the space) is not a URL. It’s really a URL pattern. The single character (/) will match any page on your site, not just the home page. When you try to visit a page while you’re offline, your browser will look for it in the appcache. If your browser finds the page in the appcache (because you visited it while online, and the page was implicitly added to the appcache at that time), then your browser will display the cached copy of the page. If your browser doesn’t find the page in the appcache, instead of displaying an error message, it will display the page /offline.html, as specified in the second half of that line in the fallback section.The network section in this cache manifest also has just a single line, a line that contains just a single character (*). This character has special meaning in a network section. It’s called the “online whitelist wildcard flag.” That’s a fancy way of saying that anything that isn’t in the appcache can still be downloaded from the original web address, as long as you have an internet connection. This is important for an “open-ended” offline web application. It means that, while you’re browsing this hypothetical offline-enabled Wikipedia online, your browser will fetch images and videos and other embedded resources normally, even if they are on a different domain. (This is common in large websites, even if they aren’t part of an offline web application. HTML pages are generated and served locally, while images and videos are served from a CDN on another domain.) Without this wildcard flag, our hypothetical offline-enabled Wikipedia would behave strangely when you were online — specifically, it wouldn’t load any externally-hosted images or videos!
  4. Request / Response headers = 871 bytes1000 clients poll every 10 seconds1000 * 871 bytes = 0,8MB / 10 seconds0,8 MB * 6 = 4,8 MB / minute4,8 MB * 60 = 288 MB / hour288 MB * 24 = 6,912 GB / day