SlideShare a Scribd company logo
Denis Platonov




                 1
About me
   2008 – 2011

                              HTML
                  CSS




   Since 2011          JavaScript




                  Front-End


                                     2
Evolution of the web
HTML                      HTML 4.01                                Today
                                             12 years of silence


                                                HTML5




  http://evolutionofweb.appspot.com/?hl=en                                 3
CSS3
Gradients   Border radius   Box shadow   Font face




                                                     4
HTML5 is backwards compatible
 <br>                    valid   HTML5   
 <br />                  valid   HTML5   
 <BR>                    valid   HTML5   
 <BR />                  valid   HTML5   
 <META CHARSET="UTF-8"> valid    HTML5   
 <meta charset=utf-8>    valid   HTML5   
 <meta charset="utf-8"> valid    HTML5   
 <meta charset="utf-8" />valid   HTML5   
 <MeTa CHARset=utF-8>    valid   HTML5   



                                              5
HTML5 – keeping it simple
   <!DOCTYPE html PUBLIC "-//W3C//DTD
    XHTML 1.0 Transitional//EN"
    "http://www.w3.org/TR/xhtml1/DTD/xhtm
    l1-transitional.dtd">
    <html
    xmlns="http://www.w3.org/1999/xhtml"
    dir="ltr" lang="ru" xml:lang="ru">

   <!DOCTYPE html>
    <html lang="ru">



                                            6
Offline data Storage - overview
   Web Storage
     Store key/value pairs locally
     Same-origin restriction
     Each origin gets 5MB of storage space
      ○ QUOTA_EXCEEDED_ERR exception

 Indexed Database API
 Web SQL Database
 File API: Directories and System



                                              7
Offline data Storage - Web Storage

   //Getter
    var foo = localStorage["bar"];

   //Setter
    localStorage["bar"] = foo;

   //Getter for integer
    var foo =
    parseInt(localStorage["bar"]);


                                     8
Offline web applications
   <!DOCTYPE HTML>
    <html manifest="/cache.manifest">
       <body>
       </body>
    </html>




                                        9
Offline web applications
CACHE MANIFEST
# Version 1
CACHE:
/style.css
/javascript.js
NETWORK:
/script.cgi
FALLBACK:
/ /offline.html



                           10
Web workers
 Background JavaScript
 Multiple threads




                          11
Web sockets
 Full-duplex communication channel
 Web Sockets provide an enormous
  reduction in unnecessary network traffic
                    Use case A:          Use case B:
                    1,000 clients        10,000 clients
                    polling every second polling every second

                    Use case C:
                    100,000 clients
                    polling every second




                                                                12
Geolocation
   IP address
   Triangulation:
     Wi-Fi, GSM or GPS
   http://html5demos.com/geo




                                13
<form>
 type="text"
 type="password"
 type="checkbox"
 type="radio"
 select
 type="button"
 type="submit"
 type="file"
 textarea




                    14
<form> - input types
<input type="email">
<input type="url">
<input type="tel">




                       15
<form> - input types


      Default layout   type="email"




      type="url"       type="tel"




                                      16
<form> - input types
   <input type="number" min="0"
    max="10" step="2" value="6">




   <input type="range" min="0"
    max="10" step="2" value="6">




                                   17
<form> - input types
<input   type="date">
<input   type="datetime">
<input   type="datetime-local">
<input   type="month">
<input   type="week">
                            time   datetime-local
<input   type="time">




date         datetime    month        week
                                                    18
<form> - input types
<input type="search">



<input type="color">




                        19
<form> - Placeholder text

<input type="text“
  onblur="if (this.value == '') {this.value
  = 'search this site';}“
  onfocus="if(this.value == 'search this
  site') {this.value = '';}“
  value="search this site">




                                              20
<form> - Placeholder text




<input type="text” placeholder="search this site">




                                                     21
<form> - datalist
<input type="search" list="search-
  suggestions"/>
<datalist id="search-suggestions">
  <option label="DM"
  value="Depeche Mode">
  <option label="Moz"
  value="Morrissey">
  <option label="NO"
  value="New Order">
  <option label="TC"
  value="The Cure">
</datalist>


                                     22
<form> - autofocus




<input type="text" autofocus />


                                  23
<form> - validation

 <input type="email">




 <input type="text" required>




 http://miketaylr.com/pres/html5/forms2.html



                                               24
<canvas> - introduction
 Bitmap
 2D
 JavaScript
 Simple shapes, lines, gradients, text,
  images




                                           25
<canvas> - IE support
    excanvas.js




                        26
<audio>, <video> - markup
<audio controls>
  <source src="music.ogg" type="audio/ogg">
  <source src="music.mp3" type="audio/mpeg">
  <!-- Flash fallback (flowplayer.org) -->
</audio>

<video width="300" height="200" controls>
 <source src="video.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'>
 <source src="video.webm" type='video/webm; codecs="vp8, vorbis"'>
 <source src="video.ogv" type='video/ogg; codecs="theora, vorbis"'>
 <!-- Flash fallback (flowplayer.org) -->

</video>




                                                                              27
<audio>, <video> - browser support
          Browser                   (H.264/AAC)   (VP8/Vorbis)   (Theora/Vorbis)
                                    .MPEG-4       .WebM          .Ogg
             Mozilla Firefox 3.6+                      a                a
<video>




             Opera 10.63+                              a                a
             Google Chrome 8.0+          a             a                a
             Apple Safari 5.0.3+         a
             Microsoft IE9+              a             a

          Browser                   (MP3)         (Vorbis)
                                    .MPEG-4       .Ogg
             Mozilla Firefox 3.6+                      a
<audio>




             Opera 10.63+                              a
             Google Chrome 8.0+          a             a
             Apple Safari 5.0.3+         a
             Microsoft IE9+              a

                                                                                   28
Feature detect
                               Detects support for
                                HTML5 & CSS3 features
                               http://www.modernizr.com/




Do not reinvent the wheel   Use Modernizr!


                                                            29
Yes, You Can Use HTML5
Today!




                         30
Questions & answers?




                       31
32

More Related Content

Viewers also liked (7)

PDF
2014 2015 - student handbook
Nastasia Arabuli
 
PPTX
Greece’s debt crisis
상은 안상은
 
PPT
Alethiology club gmo
JTKalina
 
PPT
I learningframework
Lia Yuliana
 
DOCX
Communication journal name1
Alberto Ramirez
 
ODP
Prueba
jorgecesantes
 
PPTX
Chinese Garden Scholar Musings
John Jeffery
 
2014 2015 - student handbook
Nastasia Arabuli
 
Greece’s debt crisis
상은 안상은
 
Alethiology club gmo
JTKalina
 
I learningframework
Lia Yuliana
 
Communication journal name1
Alberto Ramirez
 
Chinese Garden Scholar Musings
John Jeffery
 

Similar to Html5 and css3 (20)

KEY
html5 an introduction
vrt-medialab
 
PPT
HTML5 Webinar - Mind Storm Software
Romin Irani
 
PDF
Front end for back end developers
Wojciech Bednarski
 
PPT
HTML5 Presentation
vs4vijay
 
KEY
Html5 Primer
Graeme Bryan
 
PPTX
HTML5: An Overview
Nagendra Um
 
PPTX
Html 5
Nguyen Quang
 
PDF
HTML5 kickstart - Brooklyn Beta workshop 21.10.2010
Patrick Lauke
 
PDF
East of Toronto .NET Usergroup - Put the 5 in HTML
Frédéric Harper
 
PDF
HTML5 and Accessibility sitting in a tree
brucelawson
 
PPTX
Rohit&kunjan
Rohit Patel
 
PDF
HTML5 and friends - Institutional Web Management Workshop 2010
Patrick Lauke
 
PDF
HTML5: State of the Union
Sencha
 
PDF
HTML5 Who what where when why how
brucelawson
 
PDF
Mobile Web Development with HTML5
Roy Clarkson
 
PPTX
HTML5 on Mobile
Adam Lu
 
PPTX
Basic html5 and javascript
wendy017
 
ZIP
Html5 public
doodlemoonch
 
PPTX
Html5
Zahin Omar Alwa
 
PDF
Dive Into HTML5
Doris Chen
 
html5 an introduction
vrt-medialab
 
HTML5 Webinar - Mind Storm Software
Romin Irani
 
Front end for back end developers
Wojciech Bednarski
 
HTML5 Presentation
vs4vijay
 
Html5 Primer
Graeme Bryan
 
HTML5: An Overview
Nagendra Um
 
Html 5
Nguyen Quang
 
HTML5 kickstart - Brooklyn Beta workshop 21.10.2010
Patrick Lauke
 
East of Toronto .NET Usergroup - Put the 5 in HTML
Frédéric Harper
 
HTML5 and Accessibility sitting in a tree
brucelawson
 
Rohit&kunjan
Rohit Patel
 
HTML5 and friends - Institutional Web Management Workshop 2010
Patrick Lauke
 
HTML5: State of the Union
Sencha
 
HTML5 Who what where when why how
brucelawson
 
Mobile Web Development with HTML5
Roy Clarkson
 
HTML5 on Mobile
Adam Lu
 
Basic html5 and javascript
wendy017
 
Html5 public
doodlemoonch
 
Dive Into HTML5
Doris Chen
 
Ad

Recently uploaded (20)

PDF
Blockchain Transactions Explained For Everyone
CIFDAQ
 
PPTX
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
PDF
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
PPTX
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
PDF
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
PDF
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
PDF
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
PDF
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
PDF
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
PDF
SFWelly Summer 25 Release Highlights July 2025
Anna Loughnan Colquhoun
 
PDF
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
PDF
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
PDF
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
PDF
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
PPTX
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
PDF
July Patch Tuesday
Ivanti
 
PDF
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
PDF
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
PDF
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
PDF
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
Blockchain Transactions Explained For Everyone
CIFDAQ
 
UiPath Academic Alliance Educator Panels: Session 2 - Business Analyst Content
DianaGray10
 
Bitcoin for Millennials podcast with Bram, Power Laws of Bitcoin
Stephen Perrenod
 
AUTOMATION AND ROBOTICS IN PHARMA INDUSTRY.pptx
sameeraaabegumm
 
NewMind AI - Journal 100 Insights After The 100th Issue
NewMind AI
 
Reverse Engineering of Security Products: Developing an Advanced Microsoft De...
nwbxhhcyjv
 
Achieving Consistent and Reliable AI Code Generation - Medusa AI
medusaaico
 
Newgen 2022-Forrester Newgen TEI_13 05 2022-The-Total-Economic-Impact-Newgen-...
darshakparmar
 
DevBcn - Building 10x Organizations Using Modern Productivity Metrics
Justin Reock
 
SFWelly Summer 25 Release Highlights July 2025
Anna Loughnan Colquhoun
 
"AI Transformation: Directions and Challenges", Pavlo Shaternik
Fwdays
 
Building Real-Time Digital Twins with IBM Maximo & ArcGIS Indoors
Safe Software
 
CIFDAQ Token Spotlight for 9th July 2025
CIFDAQ
 
How Startups Are Growing Faster with App Developers in Australia.pdf
India App Developer
 
MSP360 Backup Scheduling and Retention Best Practices.pptx
MSP360
 
July Patch Tuesday
Ivanti
 
Windsurf Meetup Ottawa 2025-07-12 - Planning Mode at Reliza.pdf
Pavel Shukhman
 
Exolore The Essential AI Tools in 2025.pdf
Srinivasan M
 
Fl Studio 24.2.2 Build 4597 Crack for Windows Free Download 2025
faizk77g
 
The Builder’s Playbook - 2025 State of AI Report.pdf
jeroen339954
 
Ad

Html5 and css3

  • 2. About me  2008 – 2011 HTML CSS  Since 2011 JavaScript Front-End 2
  • 3. Evolution of the web HTML HTML 4.01 Today 12 years of silence HTML5 http://evolutionofweb.appspot.com/?hl=en 3
  • 4. CSS3 Gradients Border radius Box shadow Font face 4
  • 5. HTML5 is backwards compatible  <br> valid HTML5   <br /> valid HTML5   <BR> valid HTML5   <BR /> valid HTML5   <META CHARSET="UTF-8"> valid HTML5   <meta charset=utf-8> valid HTML5   <meta charset="utf-8"> valid HTML5   <meta charset="utf-8" />valid HTML5   <MeTa CHARset=utF-8> valid HTML5  5
  • 6. HTML5 – keeping it simple  <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtm l1-transitional.dtd"> <html xmlns="http://www.w3.org/1999/xhtml" dir="ltr" lang="ru" xml:lang="ru">  <!DOCTYPE html> <html lang="ru"> 6
  • 7. Offline data Storage - overview  Web Storage  Store key/value pairs locally  Same-origin restriction  Each origin gets 5MB of storage space ○ QUOTA_EXCEEDED_ERR exception  Indexed Database API  Web SQL Database  File API: Directories and System 7
  • 8. Offline data Storage - Web Storage  //Getter var foo = localStorage["bar"];  //Setter localStorage["bar"] = foo;  //Getter for integer var foo = parseInt(localStorage["bar"]); 8
  • 9. Offline web applications  <!DOCTYPE HTML> <html manifest="/cache.manifest"> <body> </body> </html> 9
  • 10. Offline web applications CACHE MANIFEST # Version 1 CACHE: /style.css /javascript.js NETWORK: /script.cgi FALLBACK: / /offline.html 10
  • 11. Web workers  Background JavaScript  Multiple threads 11
  • 12. Web sockets  Full-duplex communication channel  Web Sockets provide an enormous reduction in unnecessary network traffic Use case A: Use case B: 1,000 clients 10,000 clients polling every second polling every second Use case C: 100,000 clients polling every second 12
  • 13. Geolocation  IP address  Triangulation:  Wi-Fi, GSM or GPS  http://html5demos.com/geo 13
  • 14. <form>  type="text"  type="password"  type="checkbox"  type="radio"  select  type="button"  type="submit"  type="file"  textarea 14
  • 15. <form> - input types <input type="email"> <input type="url"> <input type="tel"> 15
  • 16. <form> - input types Default layout type="email" type="url" type="tel" 16
  • 17. <form> - input types  <input type="number" min="0" max="10" step="2" value="6">  <input type="range" min="0" max="10" step="2" value="6"> 17
  • 18. <form> - input types <input type="date"> <input type="datetime"> <input type="datetime-local"> <input type="month"> <input type="week"> time datetime-local <input type="time"> date datetime month week 18
  • 19. <form> - input types <input type="search"> <input type="color"> 19
  • 20. <form> - Placeholder text <input type="text“ onblur="if (this.value == '') {this.value = 'search this site';}“ onfocus="if(this.value == 'search this site') {this.value = '';}“ value="search this site"> 20
  • 21. <form> - Placeholder text <input type="text” placeholder="search this site"> 21
  • 22. <form> - datalist <input type="search" list="search- suggestions"/> <datalist id="search-suggestions"> <option label="DM" value="Depeche Mode"> <option label="Moz" value="Morrissey"> <option label="NO" value="New Order"> <option label="TC" value="The Cure"> </datalist> 22
  • 23. <form> - autofocus <input type="text" autofocus /> 23
  • 24. <form> - validation <input type="email"> <input type="text" required> http://miketaylr.com/pres/html5/forms2.html 24
  • 25. <canvas> - introduction  Bitmap  2D  JavaScript  Simple shapes, lines, gradients, text, images 25
  • 26. <canvas> - IE support excanvas.js 26
  • 27. <audio>, <video> - markup <audio controls> <source src="music.ogg" type="audio/ogg"> <source src="music.mp3" type="audio/mpeg"> <!-- Flash fallback (flowplayer.org) --> </audio> <video width="300" height="200" controls> <source src="video.mp4" type='video/mp4; codecs="avc1.42E01E, mp4a.40.2"'> <source src="video.webm" type='video/webm; codecs="vp8, vorbis"'> <source src="video.ogv" type='video/ogg; codecs="theora, vorbis"'> <!-- Flash fallback (flowplayer.org) --> </video> 27
  • 28. <audio>, <video> - browser support Browser (H.264/AAC) (VP8/Vorbis) (Theora/Vorbis) .MPEG-4 .WebM .Ogg Mozilla Firefox 3.6+ a a <video> Opera 10.63+ a a Google Chrome 8.0+ a a a Apple Safari 5.0.3+ a Microsoft IE9+ a a Browser (MP3) (Vorbis) .MPEG-4 .Ogg Mozilla Firefox 3.6+ a <audio> Opera 10.63+ a Google Chrome 8.0+ a a Apple Safari 5.0.3+ a Microsoft IE9+ a 28
  • 29. Feature detect  Detects support for HTML5 & CSS3 features  http://www.modernizr.com/ Do not reinvent the wheel Use Modernizr! 29
  • 30. Yes, You Can Use HTML5 Today! 30
  • 32. 32