SlideShare a Scribd company logo
1 of 39
HTML 5 & CSS 3
Kabisa Knowledge Session - May 21, 2010




   { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
A brief overview

     Modular
     Not based on SGML
     Inline SVG
     Support for PUT and DELETE
     Custom data attributes




               { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
HTML 5 Features

    Better Semantics
    Canvas
    Input Types
    Form Validation
    Media Elements
    Drag & Drop
    Local Storage
    Geolocation
    Web Sockets
    Microdata


             { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Better Semantics

          <div id=”header”>                                              <header>


            <div id=”nav”>                                                <nav>



<div id=”article”>   <div id=”side”>                      <section>                 <aside>


                                                            <article>




          <div id=”footer”>                                              <footer>



                     { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Better Semantics

   Figure                                   <figure>


   Group figures
   Captions
   Code blocks
   Essential content




                                             <figcaption>
                                                Nom Nom Nom

              { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Better Semantics
     Progress
     •   <progress max=”100”><span>51</span>%</progress>

     •   Completion of a task
     •   Value between 0 and given maximum
     Meter
     •   Tickets sold: <meter min=”0” high=”1300” optimum=”2000”>1900</meter>

     •   Scalar measurement within known range
     Time
     •   <time datetime=”2010-05-21T016:00+02:00”>21 May 2010 at 4 PM</time>

     •   Attribute: pubdate




                  { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Better Semantics

     Command
     •   Something a user may execute
     Datagrid
     •   Non-tabular data
     Mark
     •   Highlight some text
     Output
     •   Output of an application
     Ruby
     •   Ruby annotations for Asian languages



                 { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Canvas

     Drawing API
     Create graphics on the fly

   <canvas id=”super_square”>
      fallback information
   </canvas>



   var canvas = document.getElementById(‘super_square’);
   var context = canvas.getContext(‘2d’);

   context.fillStyle = “rgba(101, 156, 64, 0.4)”;
   context.fillRect(0, 0, 100, 100);




                  { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Input Types

     Defaults to “text’ when unsupported
     <input type=”tel”>
     <input type=”url”>
     <input type=”email”>
     <input type=”number”>
     <input type=”search”>




   Tel                Url                      Email                   Number




                  { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Input Types
     <input type=”datetime”>
     <input type=”date”>
     <input type=”range”>
     <input type=”color”>
     <input type=”file multiple”>




  Date                               Range                     File multiple




                  { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Forms

   Placeholders
   Autofocus
   Validations




             { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Media Elements

     OGG Theora/Vorbis
     •   Chrome
     •   Firefox
     •   Opera
     MPEG4 H.264/AAC
     •   Chrome
     •   IE 9
     •   Opera
     •   Safari




                 { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Media Elements

      WebM VP8
  •   Chrome
  •   Firefox
  •   IE 9
  •   Opera
  •   Safari??




                 { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Drag & Drop

    Images and links by default
    Cancel default dragover (dragenter in IE)
    Listen for drop event with dataTransfer object
    It sucks
   <div draggable=”true”></div>

   addEvent(div, ‘dragstart’, function(e) {
      e.dataTransfer.setData(‘foo’, ‘bar’);
   }, true);

   addEvent(div, ‘dragend’, function(e) {
      e.dataTransfer.getData(‘foo’);
   }, true);




                 { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Local Storage

     localStorage & sessionStorage
     Pro cookies
     Key - Value
     String only
     Megabytes of data

  try {
     localStorage.setItem(“wants_cookies”, “a whole box!”);
  } catch (e) {
     if (e == QUOTA_EXCEEDED_ERR) {
        alert(“You have way too much cookie boxes, go away.”);
     }
  }




                  { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Local Storage

      WEB SQL
      Transactions
      Client-side SQLite


  var db = openDatabase(‘food’, ‘1.1’, ‘A whole database filled with food’, 1024);
  db.transaction(function(tx) {
     tx.executeSql(‘SELECT * FROM vegetables’, [], function(tx, results) {
        for (i = 0l i < results.rows.length; i++) {
           alert(results.rows.item(i).text);
        }
     });
  });




                   { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Local Storage

     Offline Application Caching
     Refer directly to cache
     Offline storage
     Event listeners online/offline

    <html manifest=”cache.manifest”>

    CACHE MANIFEST
    images/logo.png
    styles/screen.css
    styles/print.css




                  { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Geolocation

   Find current coordinates of user
   Track user

 navigator.geolocation.getCurrentPosition(show_on_map, handle_error,
    {enableHighAccuracy: true});




                   { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Web Sockets
    Bi-directional full-duplex communication
    Increase scalability
    Less connections
    No need for Comet-like hacks




     http://pusherapp.com

              { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Web Workers

  Background JavaScript threads
  Can not manipulate DOM
  OS-level threads
  Pass data through serialized objects




              { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Microdata
     Additional semantics
     Scoped name/value pairs
     Custom vocabularies
     Scopes
     SEO

   <section itemscope itemtype=”http://example.org/Person”>
      <h1 itemprop=”name”>Kevin van Dijk</h1>
      <img itemprop=”picture” src=”picture.jpg” alt=”Me”>
   </section>




                  { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
CSS 3 Features

     Opacity
     RGBA & HSL/A Color
     New Background Properties
     New Border Properties
     Shadows
     New Text Properties
     Fonts
     Transformations
     3D
     Selectors


                 { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Opacity

     Adjust opacity of an element
     Value between 0.0 and 1.0
     Not supported in IE

   div { background: #000; opacity: 0.6; }




                  { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
RGBA & HSL/A Color

     RGB with alpha value
     Hue, Saturation, Lightness with alpha value
     Alpha value between 0.0 and 1.0

  div { background: rgba(118, 187, 78, 0.4) }




 div { background: hsla(40%, 95%, 95%, 0.5) }




                  { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Backgrounds

     Background-size
     Multiple background images

  div { background-size: 160px 98px; width: 500px; height: 98px; }




  div { background: url(left.png) top left no-repeat,

       background: url(right.png) top right no-repeat }




                  { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Borders

   Border image
   Multiple border colors
   Border radius

  div { border-radius: 10px; }




                   { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Text

      Text overflow
      Text shadow
      Column width
      Column gap

 article { column-width: 100px; column-gap: 30px; }


  Lorem ipsum dolor sit amet, consectetur              Lorem ipsum dolor sit amet, consectetur
  adipiscing elit. Morbi ultrices tellus nec nibh      adipiscing elit. Morbi ultrices tellus nec nibh
  suscipit sit amet egestas nibh mollis.               suscipit sit amet egestas nibh mollis.
  Pellentesque eget lectus mauris. Nunc                Pellentesque eget lectus mauris. Nunc
  venenatis risus in magna ullamcorper vitae           venenatis risus in magna ullamcorper vitae
  mattis mauris ultricies. Praesent nisl eros,         mattis mauris ultricies. Praesent nisl eros,
  adipiscing in varius tempor, eleifend quis dolor.    adipiscing in varius tempor, eleifend quis dolor.
  Suspendisse at tellus eget erat sollicitudin         Suspendisse at tellus eget erat sollicitudin
  iaculis at quis eros. Fusce nibh neque, porttitor    iaculis at quis eros. Fusce nibh neque, porttitor
  vitae condimentum ac, condimentum id lacus.          vitae condimentum ac, condimentum id lacus.
  Fusce lorem leo, scelerisque a mollis eget,          Fusce lorem leo, scelerisque a mollis eget,
  convallis nec arcu. Praesent tincidunt est in arcu   convallis nec arcu. Praesent tincidunt est in arcu
  scelerisque mollis. Integer et turpis velit.         scelerisque mollis. Integer et turpis velit.
  Pellentesque malesuada, elit id mattis varius,       Pellentesque malesuada, elit id mattis varius,
  dolor lorem imperdiet tortor, vulputate aliquam      dolor lorem imperdiet tortor, vulputate aliquam
  tellus risus vitae felis. Vestibulum egestas         tellus risus vitae felis. Vestibulum egestas
  gravida enim, ac tincidunt leo convallis in. Nam     gravida enim, ac tincidunt leo convallis in. Nam




                                         { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Fonts

   @font-face
   Local or URL
   TIF and OTF
   EOT in IE4+
   No need for SIFR or Cufon anymore
   http://typekit.com/




             { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Transformations

     Rotate
     Scale
     Skew
     Translate

  div { transform: rotate(45deg); }




                  { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Transitions

     Animate properties
     Configurable duration


   /* Fade out on hover */
   div {
      opacity: 1;
      -webkit-transition: opacity 1s linear;
   }

   div:hover {
     opacity: 0;
   }




                   { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Selectors

     Already in use by many JS libraries
     e[attribute], e[attribute=value]
     :first-child, :last-child, :link, :visited
     :nth-child(), :only-child, :after, :before
     :first-of-type, :last-of-type
     :only-of-type
     :empty, :not()
     :target, :enabled, :disabled, :checked




                { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Media Queries

    Target specific range of devices
    Does not validate

    .blog {
       font-size: 1.1em;
       line-height: 1.6em;
       color: #fff;
       width: 100%;
    }


    @media all and (min-width: 20em) {
       .blog {
          font-size: 1.1em;
          line-height: 1.6em;
          color: #fff;
          width: 100%;
       }
    }



                 { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
3D

     Only in Chrome & Safari
     Perspective
       Distance in pixels
     Rotate3D
       Rotate three-dimensional
     Translate3D
       Move along three axes
     Scale3D
       Scale in three dimensions




                { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
When to Use?
 IE 7
 IE 8                    A better future ahead
 IE 9
 Firefox 3.5
 Firefox 3.7
 Opera 10.50
 Safari 4
 Chrome 4




                                                              http://html5readiness.com

               { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
When to Use?

                         A better future ahead




                                                                   http://caniuse.com




               { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Progressive Enhancement

   Websites do not have to look the same in every browser
   Progressive Enhancement != Graceful Degradation
   Do not lock anybody out (not even IE 6)
   http://dowebsitesneedtobeexperiencedexactlythesameineverybrowser.com/




                                            Courtesy of alistapart.com



                  { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Modernizr

   Test-Driven progressive enhancement
   Detect support for CSS 3 properties
   Feature detection
   Add support for HTML 5 elements




             { Agile Development } { Ruby on Rails } { Java / J2EE }
HTML 5 & CSS 3
Discussion




                             !?
             { Agile Development } { Ruby on Rails } { Java / J2EE }
{ Agile Development } { Ruby on Rails } { Java / J2EE }

More Related Content

What's hot

Keypoints html5
Keypoints html5Keypoints html5
Keypoints html5dynamis
 
High Performance Ajax Applications
High Performance Ajax ApplicationsHigh Performance Ajax Applications
High Performance Ajax ApplicationsJulien Lecomte
 
How to make Ajax work for you
How to make Ajax work for youHow to make Ajax work for you
How to make Ajax work for youSimon Willison
 
Real World Web Standards
Real World Web StandardsReal World Web Standards
Real World Web Standardsgleddy
 
jQuery For Beginners - jQuery Conference 2009
jQuery For Beginners - jQuery Conference 2009jQuery For Beginners - jQuery Conference 2009
jQuery For Beginners - jQuery Conference 2009Ralph Whitbeck
 
Building an HTML5 Video Player
Building an HTML5 Video PlayerBuilding an HTML5 Video Player
Building an HTML5 Video PlayerJim Jeffers
 
Taiwan Web Standards Talk 2011
Taiwan Web Standards Talk 2011Taiwan Web Standards Talk 2011
Taiwan Web Standards Talk 2011Zi Bin Cheah
 
High Performance Ajax Applications
High Performance Ajax ApplicationsHigh Performance Ajax Applications
High Performance Ajax ApplicationsSiarhei Barysiuk
 
Even faster web sites presentation 3
Even faster web sites presentation 3Even faster web sites presentation 3
Even faster web sites presentation 3Felipe Lavín
 
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
 
The Django Web Application Framework 2
The Django Web Application Framework 2The Django Web Application Framework 2
The Django Web Application Framework 2fishwarter
 
Even faster web sites
Even faster web sitesEven faster web sites
Even faster web sitesFelipe Lavín
 
HTML5 & Friends
HTML5 & FriendsHTML5 & Friends
HTML5 & FriendsRemy Sharp
 
Introduction to HTML5
Introduction to HTML5Introduction to HTML5
Introduction to HTML5Terry Ryan
 

What's hot (19)

Keypoints html5
Keypoints html5Keypoints html5
Keypoints html5
 
jQuery UI and Plugins
jQuery UI and PluginsjQuery UI and Plugins
jQuery UI and Plugins
 
WordPress and Ajax
WordPress and AjaxWordPress and Ajax
WordPress and Ajax
 
High Performance Ajax Applications
High Performance Ajax ApplicationsHigh Performance Ajax Applications
High Performance Ajax Applications
 
How to make Ajax work for you
How to make Ajax work for youHow to make Ajax work for you
How to make Ajax work for you
 
Real World Web Standards
Real World Web StandardsReal World Web Standards
Real World Web Standards
 
jQuery For Beginners - jQuery Conference 2009
jQuery For Beginners - jQuery Conference 2009jQuery For Beginners - jQuery Conference 2009
jQuery For Beginners - jQuery Conference 2009
 
Introduction to Html5
Introduction to Html5Introduction to Html5
Introduction to Html5
 
Building an HTML5 Video Player
Building an HTML5 Video PlayerBuilding an HTML5 Video Player
Building an HTML5 Video Player
 
Taiwan Web Standards Talk 2011
Taiwan Web Standards Talk 2011Taiwan Web Standards Talk 2011
Taiwan Web Standards Talk 2011
 
High Performance Ajax Applications
High Performance Ajax ApplicationsHigh Performance Ajax Applications
High Performance Ajax Applications
 
High-Quality JavaScript
High-Quality JavaScriptHigh-Quality JavaScript
High-Quality JavaScript
 
Even faster web sites presentation 3
Even faster web sites presentation 3Even faster web sites presentation 3
Even faster web sites presentation 3
 
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
 
The Django Web Application Framework 2
The Django Web Application Framework 2The Django Web Application Framework 2
The Django Web Application Framework 2
 
Even faster web sites
Even faster web sitesEven faster web sites
Even faster web sites
 
Advanced Json
Advanced JsonAdvanced Json
Advanced Json
 
HTML5 & Friends
HTML5 & FriendsHTML5 & Friends
HTML5 & Friends
 
Introduction to HTML5
Introduction to HTML5Introduction to HTML5
Introduction to HTML5
 

Viewers also liked

Html 5 in a big nutshell
Html 5 in a big nutshellHtml 5 in a big nutshell
Html 5 in a big nutshellLennart Schoors
 
Gears and HTML 5 @media Ajax London 2008
Gears and HTML 5 @media Ajax London 2008Gears and HTML 5 @media Ajax London 2008
Gears and HTML 5 @media Ajax London 2008dion
 
The Future of the Web: HTML5
The Future of the Web: HTML5The Future of the Web: HTML5
The Future of the Web: HTML5Derek Bender
 
ePub 3, HTML 5 & CSS 3 (+ Fixed-Layout)
ePub 3, HTML 5 & CSS 3 (+ Fixed-Layout)ePub 3, HTML 5 & CSS 3 (+ Fixed-Layout)
ePub 3, HTML 5 & CSS 3 (+ Fixed-Layout)Clément Wehrung
 
Computer virus
Computer virusComputer virus
Computer viruskiran_a_c
 
Html5 with SharePoint 2010
Html5 with SharePoint 2010Html5 with SharePoint 2010
Html5 with SharePoint 2010Hemant Joshi
 
HTML 5 Step By Step - Ebook
HTML 5 Step By Step - EbookHTML 5 Step By Step - Ebook
HTML 5 Step By Step - EbookScottperrone
 
Javascript and Jquery: The connection between
Javascript and Jquery: The connection betweenJavascript and Jquery: The connection between
Javascript and Jquery: The connection betweenClint LaForest
 
009 sql server management studio
009 sql server management studio009 sql server management studio
009 sql server management studiolet's go to study
 
OOPs fundamentals session for freshers in my office (Aug 5, 13)
OOPs fundamentals session for freshers in my office (Aug 5, 13)OOPs fundamentals session for freshers in my office (Aug 5, 13)
OOPs fundamentals session for freshers in my office (Aug 5, 13)Ashoka R K T
 
ASP.NET Core deployment options
ASP.NET Core deployment optionsASP.NET Core deployment options
ASP.NET Core deployment optionsKen Cenerelli
 
virus programming using batch file
virus programming using batch filevirus programming using batch file
virus programming using batch fileAris Suryadi
 
Back to the Basics - 1 - Introduction to Web Development
Back to the Basics - 1 - Introduction to Web DevelopmentBack to the Basics - 1 - Introduction to Web Development
Back to the Basics - 1 - Introduction to Web DevelopmentClint LaForest
 
.Net framework architecture
.Net framework architecture.Net framework architecture
.Net framework architectureFad Zulkifli
 

Viewers also liked (20)

Html 5 in a big nutshell
Html 5 in a big nutshellHtml 5 in a big nutshell
Html 5 in a big nutshell
 
Up to Speed on HTML 5 and CSS 3
Up to Speed on HTML 5 and CSS 3Up to Speed on HTML 5 and CSS 3
Up to Speed on HTML 5 and CSS 3
 
Gears and HTML 5 @media Ajax London 2008
Gears and HTML 5 @media Ajax London 2008Gears and HTML 5 @media Ajax London 2008
Gears and HTML 5 @media Ajax London 2008
 
The Future of the Web: HTML5
The Future of the Web: HTML5The Future of the Web: HTML5
The Future of the Web: HTML5
 
html5.ppt
html5.ppthtml5.ppt
html5.ppt
 
ePub 3, HTML 5 & CSS 3 (+ Fixed-Layout)
ePub 3, HTML 5 & CSS 3 (+ Fixed-Layout)ePub 3, HTML 5 & CSS 3 (+ Fixed-Layout)
ePub 3, HTML 5 & CSS 3 (+ Fixed-Layout)
 
Computer virus
Computer virusComputer virus
Computer virus
 
Security
SecuritySecurity
Security
 
Html5 with SharePoint 2010
Html5 with SharePoint 2010Html5 with SharePoint 2010
Html5 with SharePoint 2010
 
Zeus
ZeusZeus
Zeus
 
HTML 5 Step By Step - Ebook
HTML 5 Step By Step - EbookHTML 5 Step By Step - Ebook
HTML 5 Step By Step - Ebook
 
Javascript and Jquery: The connection between
Javascript and Jquery: The connection betweenJavascript and Jquery: The connection between
Javascript and Jquery: The connection between
 
009 sql server management studio
009 sql server management studio009 sql server management studio
009 sql server management studio
 
OOPs fundamentals session for freshers in my office (Aug 5, 13)
OOPs fundamentals session for freshers in my office (Aug 5, 13)OOPs fundamentals session for freshers in my office (Aug 5, 13)
OOPs fundamentals session for freshers in my office (Aug 5, 13)
 
Sql server 2012 ha dr
Sql server 2012 ha drSql server 2012 ha dr
Sql server 2012 ha dr
 
ASP.NET Core deployment options
ASP.NET Core deployment optionsASP.NET Core deployment options
ASP.NET Core deployment options
 
virus programming using batch file
virus programming using batch filevirus programming using batch file
virus programming using batch file
 
Back to the Basics - 1 - Introduction to Web Development
Back to the Basics - 1 - Introduction to Web DevelopmentBack to the Basics - 1 - Introduction to Web Development
Back to the Basics - 1 - Introduction to Web Development
 
.Net framework architecture
.Net framework architecture.Net framework architecture
.Net framework architecture
 
ASP.NET OVERVIEW
ASP.NET OVERVIEWASP.NET OVERVIEW
ASP.NET OVERVIEW
 

Similar to HTML 5 & CSS 3

Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5Sadaaki HIRAI
 
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
 
HTML5 Hacking - Yahoo! Open Hack Day
HTML5 Hacking - Yahoo! Open Hack DayHTML5 Hacking - Yahoo! Open Hack Day
HTML5 Hacking - Yahoo! Open Hack DayTed Drake
 
HTML5: An Overview
HTML5: An OverviewHTML5: An Overview
HTML5: An OverviewNagendra Um
 
Course Tech 2013, Sasha Vodnik, A Crash Course in HTML5
Course Tech 2013, Sasha Vodnik, A Crash Course in HTML5Course Tech 2013, Sasha Vodnik, A Crash Course in HTML5
Course Tech 2013, Sasha Vodnik, A Crash Course in HTML5Cengage Learning
 
Top 10 HTML5 features
Top 10 HTML5 featuresTop 10 HTML5 features
Top 10 HTML5 featuresGill Cleeren
 
Ease into HTML5 and CSS3
Ease into HTML5 and CSS3Ease into HTML5 and CSS3
Ease into HTML5 and CSS3Brian Moon
 
Html5 and web technology update
Html5 and web technology updateHtml5 and web technology update
Html5 and web technology updateDoug Domeny
 
Repaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares webRepaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares webPablo Garaizar
 
HTML5 for ASP.NET Developers
HTML5 for ASP.NET DevelopersHTML5 for ASP.NET Developers
HTML5 for ASP.NET DevelopersJustin Lee
 
What you need to know bout html5
What you need to know bout html5What you need to know bout html5
What you need to know bout html5Kevin DeRudder
 
Client Side Optimization
Client Side OptimizationClient Side Optimization
Client Side OptimizationPatrick Huesler
 
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
 
Top 10 HTML5 features every developer should know!
Top 10 HTML5 features every developer should know!Top 10 HTML5 features every developer should know!
Top 10 HTML5 features every developer should know!Gill Cleeren
 
Wordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The NextwebWordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The NextwebGeorge Kanellopoulos
 

Similar to HTML 5 & CSS 3 (20)

Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
Familiar HTML5 - 事例とサンプルコードから学ぶ 身近で普通に使わているHTML5
 
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)
 
HTML5 Hacking - Yahoo! Open Hack Day
HTML5 Hacking - Yahoo! Open Hack DayHTML5 Hacking - Yahoo! Open Hack Day
HTML5 Hacking - Yahoo! Open Hack Day
 
HTML5: An Overview
HTML5: An OverviewHTML5: An Overview
HTML5: An Overview
 
HTML5 - A Whirlwind tour
HTML5 - A Whirlwind tourHTML5 - A Whirlwind tour
HTML5 - A Whirlwind tour
 
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
 
Course Tech 2013, Sasha Vodnik, A Crash Course in HTML5
Course Tech 2013, Sasha Vodnik, A Crash Course in HTML5Course Tech 2013, Sasha Vodnik, A Crash Course in HTML5
Course Tech 2013, Sasha Vodnik, A Crash Course in HTML5
 
Top 10 HTML5 features
Top 10 HTML5 featuresTop 10 HTML5 features
Top 10 HTML5 features
 
Ease into HTML5 and CSS3
Ease into HTML5 and CSS3Ease into HTML5 and CSS3
Ease into HTML5 and CSS3
 
Html5 and web technology update
Html5 and web technology updateHtml5 and web technology update
Html5 and web technology update
 
Repaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares webRepaso rápido a los nuevos estándares web
Repaso rápido a los nuevos estándares web
 
HTML5 for ASP.NET Developers
HTML5 for ASP.NET DevelopersHTML5 for ASP.NET Developers
HTML5 for ASP.NET Developers
 
Html5 CSS3 jQuery Basic
Html5 CSS3 jQuery BasicHtml5 CSS3 jQuery Basic
Html5 CSS3 jQuery Basic
 
What you need to know bout html5
What you need to know bout html5What you need to know bout html5
What you need to know bout html5
 
Client Side Optimization
Client Side OptimizationClient Side Optimization
Client Side Optimization
 
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を考える
 
Edge of the Web
Edge of the WebEdge of the Web
Edge of the Web
 
Top 10 HTML5 features every developer should know!
Top 10 HTML5 features every developer should know!Top 10 HTML5 features every developer should know!
Top 10 HTML5 features every developer should know!
 
Wordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The NextwebWordcamp Thessaloniki 2011 The Nextweb
Wordcamp Thessaloniki 2011 The Nextweb
 
Html5
Html5Html5
Html5
 

Recently uploaded

Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...apidays
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Victor Rentea
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsNanddeep Nachan
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...DianaGray10
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfOrbitshub
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusZilliz
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfOverkill Security
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Victor Rentea
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyKhushali Kathiriya
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherRemote DBA Services
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamUiPathCommunity
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...apidays
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodJuan lago vázquez
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingEdi Saputra
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAndrey Devyatkin
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MIND CTI
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistandanishmna97
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century educationjfdjdjcjdnsjd
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024The Digital Insurer
 

Recently uploaded (20)

Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
Apidays New York 2024 - APIs in 2030: The Risk of Technological Sleepwalk by ...
 
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
Modular Monolith - a Practical Alternative to Microservices @ Devoxx UK 2024
 
MS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectorsMS Copilot expands with MS Graph connectors
MS Copilot expands with MS Graph connectors
 
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
Connector Corner: Accelerate revenue generation using UiPath API-centric busi...
 
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdfRising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
Rising Above_ Dubai Floods and the Fortitude of Dubai International Airport.pdf
 
Exploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with MilvusExploring Multimodal Embeddings with Milvus
Exploring Multimodal Embeddings with Milvus
 
Cyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdfCyberprint. Dark Pink Apt Group [EN].pdf
Cyberprint. Dark Pink Apt Group [EN].pdf
 
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024Finding Java's Hidden Performance Traps @ DevoxxUK 2024
Finding Java's Hidden Performance Traps @ DevoxxUK 2024
 
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
+971581248768>> SAFE AND ORIGINAL ABORTION PILLS FOR SALE IN DUBAI AND ABUDHA...
 
Artificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : UncertaintyArtificial Intelligence Chap.5 : Uncertainty
Artificial Intelligence Chap.5 : Uncertainty
 
Strategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a FresherStrategies for Landing an Oracle DBA Job as a Fresher
Strategies for Landing an Oracle DBA Job as a Fresher
 
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 AmsterdamDEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
DEV meet-up UiPath Document Understanding May 7 2024 Amsterdam
 
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
Apidays New York 2024 - The Good, the Bad and the Governed by David O'Neill, ...
 
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin WoodPolkadot JAM Slides - Token2049 - By Dr. Gavin Wood
Polkadot JAM Slides - Token2049 - By Dr. Gavin Wood
 
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost SavingRepurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
Repurposing LNG terminals for Hydrogen Ammonia: Feasibility and Cost Saving
 
AWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of TerraformAWS Community Day CPH - Three problems of Terraform
AWS Community Day CPH - Three problems of Terraform
 
MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024MINDCTI Revenue Release Quarter One 2024
MINDCTI Revenue Release Quarter One 2024
 
CNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In PakistanCNIC Information System with Pakdata Cf In Pakistan
CNIC Information System with Pakdata Cf In Pakistan
 
presentation ICT roal in 21st century education
presentation ICT roal in 21st century educationpresentation ICT roal in 21st century education
presentation ICT roal in 21st century education
 
Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024Axa Assurance Maroc - Insurer Innovation Award 2024
Axa Assurance Maroc - Insurer Innovation Award 2024
 

HTML 5 & CSS 3

  • 1. HTML 5 & CSS 3 Kabisa Knowledge Session - May 21, 2010 { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 2. HTML 5 & CSS 3 A brief overview Modular Not based on SGML Inline SVG Support for PUT and DELETE Custom data attributes { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 3. HTML 5 & CSS 3 HTML 5 Features Better Semantics Canvas Input Types Form Validation Media Elements Drag & Drop Local Storage Geolocation Web Sockets Microdata { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 4. HTML 5 & CSS 3 Better Semantics <div id=”header”> <header> <div id=”nav”> <nav> <div id=”article”> <div id=”side”> <section> <aside> <article> <div id=”footer”> <footer> { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 5. HTML 5 & CSS 3 Better Semantics Figure <figure> Group figures Captions Code blocks Essential content <figcaption> Nom Nom Nom { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 6. HTML 5 & CSS 3 Better Semantics Progress • <progress max=”100”><span>51</span>%</progress> • Completion of a task • Value between 0 and given maximum Meter • Tickets sold: <meter min=”0” high=”1300” optimum=”2000”>1900</meter> • Scalar measurement within known range Time • <time datetime=”2010-05-21T016:00+02:00”>21 May 2010 at 4 PM</time> • Attribute: pubdate { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 7. HTML 5 & CSS 3 Better Semantics Command • Something a user may execute Datagrid • Non-tabular data Mark • Highlight some text Output • Output of an application Ruby • Ruby annotations for Asian languages { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 8. HTML 5 & CSS 3 Canvas Drawing API Create graphics on the fly <canvas id=”super_square”> fallback information </canvas> var canvas = document.getElementById(‘super_square’); var context = canvas.getContext(‘2d’); context.fillStyle = “rgba(101, 156, 64, 0.4)”; context.fillRect(0, 0, 100, 100); { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 9. HTML 5 & CSS 3 Input Types Defaults to “text’ when unsupported <input type=”tel”> <input type=”url”> <input type=”email”> <input type=”number”> <input type=”search”> Tel Url Email Number { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 10. HTML 5 & CSS 3 Input Types <input type=”datetime”> <input type=”date”> <input type=”range”> <input type=”color”> <input type=”file multiple”> Date Range File multiple { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 11. HTML 5 & CSS 3 Forms Placeholders Autofocus Validations { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 12. HTML 5 & CSS 3 Media Elements OGG Theora/Vorbis • Chrome • Firefox • Opera MPEG4 H.264/AAC • Chrome • IE 9 • Opera • Safari { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 13. HTML 5 & CSS 3 Media Elements WebM VP8 • Chrome • Firefox • IE 9 • Opera • Safari?? { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 14. HTML 5 & CSS 3 Drag & Drop Images and links by default Cancel default dragover (dragenter in IE) Listen for drop event with dataTransfer object It sucks <div draggable=”true”></div> addEvent(div, ‘dragstart’, function(e) { e.dataTransfer.setData(‘foo’, ‘bar’); }, true); addEvent(div, ‘dragend’, function(e) { e.dataTransfer.getData(‘foo’); }, true); { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 15. HTML 5 & CSS 3 Local Storage localStorage & sessionStorage Pro cookies Key - Value String only Megabytes of data try { localStorage.setItem(“wants_cookies”, “a whole box!”); } catch (e) { if (e == QUOTA_EXCEEDED_ERR) { alert(“You have way too much cookie boxes, go away.”); } } { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 16. HTML 5 & CSS 3 Local Storage WEB SQL Transactions Client-side SQLite var db = openDatabase(‘food’, ‘1.1’, ‘A whole database filled with food’, 1024); db.transaction(function(tx) { tx.executeSql(‘SELECT * FROM vegetables’, [], function(tx, results) { for (i = 0l i < results.rows.length; i++) { alert(results.rows.item(i).text); } }); }); { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 17. HTML 5 & CSS 3 Local Storage Offline Application Caching Refer directly to cache Offline storage Event listeners online/offline <html manifest=”cache.manifest”> CACHE MANIFEST images/logo.png styles/screen.css styles/print.css { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 18. HTML 5 & CSS 3 Geolocation Find current coordinates of user Track user navigator.geolocation.getCurrentPosition(show_on_map, handle_error, {enableHighAccuracy: true}); { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 19. HTML 5 & CSS 3 Web Sockets Bi-directional full-duplex communication Increase scalability Less connections No need for Comet-like hacks http://pusherapp.com { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 20. HTML 5 & CSS 3 Web Workers Background JavaScript threads Can not manipulate DOM OS-level threads Pass data through serialized objects { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 21. HTML 5 & CSS 3 Microdata Additional semantics Scoped name/value pairs Custom vocabularies Scopes SEO <section itemscope itemtype=”http://example.org/Person”> <h1 itemprop=”name”>Kevin van Dijk</h1> <img itemprop=”picture” src=”picture.jpg” alt=”Me”> </section> { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 22. HTML 5 & CSS 3 CSS 3 Features Opacity RGBA & HSL/A Color New Background Properties New Border Properties Shadows New Text Properties Fonts Transformations 3D Selectors { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 23. HTML 5 & CSS 3 Opacity Adjust opacity of an element Value between 0.0 and 1.0 Not supported in IE div { background: #000; opacity: 0.6; } { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 24. HTML 5 & CSS 3 RGBA & HSL/A Color RGB with alpha value Hue, Saturation, Lightness with alpha value Alpha value between 0.0 and 1.0 div { background: rgba(118, 187, 78, 0.4) } div { background: hsla(40%, 95%, 95%, 0.5) } { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 25. HTML 5 & CSS 3 Backgrounds Background-size Multiple background images div { background-size: 160px 98px; width: 500px; height: 98px; } div { background: url(left.png) top left no-repeat, background: url(right.png) top right no-repeat } { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 26. HTML 5 & CSS 3 Borders Border image Multiple border colors Border radius div { border-radius: 10px; } { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 27. HTML 5 & CSS 3 Text Text overflow Text shadow Column width Column gap article { column-width: 100px; column-gap: 30px; } Lorem ipsum dolor sit amet, consectetur Lorem ipsum dolor sit amet, consectetur adipiscing elit. Morbi ultrices tellus nec nibh adipiscing elit. Morbi ultrices tellus nec nibh suscipit sit amet egestas nibh mollis. suscipit sit amet egestas nibh mollis. Pellentesque eget lectus mauris. Nunc Pellentesque eget lectus mauris. Nunc venenatis risus in magna ullamcorper vitae venenatis risus in magna ullamcorper vitae mattis mauris ultricies. Praesent nisl eros, mattis mauris ultricies. Praesent nisl eros, adipiscing in varius tempor, eleifend quis dolor. adipiscing in varius tempor, eleifend quis dolor. Suspendisse at tellus eget erat sollicitudin Suspendisse at tellus eget erat sollicitudin iaculis at quis eros. Fusce nibh neque, porttitor iaculis at quis eros. Fusce nibh neque, porttitor vitae condimentum ac, condimentum id lacus. vitae condimentum ac, condimentum id lacus. Fusce lorem leo, scelerisque a mollis eget, Fusce lorem leo, scelerisque a mollis eget, convallis nec arcu. Praesent tincidunt est in arcu convallis nec arcu. Praesent tincidunt est in arcu scelerisque mollis. Integer et turpis velit. scelerisque mollis. Integer et turpis velit. Pellentesque malesuada, elit id mattis varius, Pellentesque malesuada, elit id mattis varius, dolor lorem imperdiet tortor, vulputate aliquam dolor lorem imperdiet tortor, vulputate aliquam tellus risus vitae felis. Vestibulum egestas tellus risus vitae felis. Vestibulum egestas gravida enim, ac tincidunt leo convallis in. Nam gravida enim, ac tincidunt leo convallis in. Nam { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 28. HTML 5 & CSS 3 Fonts @font-face Local or URL TIF and OTF EOT in IE4+ No need for SIFR or Cufon anymore http://typekit.com/ { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 29. HTML 5 & CSS 3 Transformations Rotate Scale Skew Translate div { transform: rotate(45deg); } { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 30. HTML 5 & CSS 3 Transitions Animate properties Configurable duration /* Fade out on hover */ div { opacity: 1; -webkit-transition: opacity 1s linear; } div:hover { opacity: 0; } { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 31. HTML 5 & CSS 3 Selectors Already in use by many JS libraries e[attribute], e[attribute=value] :first-child, :last-child, :link, :visited :nth-child(), :only-child, :after, :before :first-of-type, :last-of-type :only-of-type :empty, :not() :target, :enabled, :disabled, :checked { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 32. HTML 5 & CSS 3 Media Queries Target specific range of devices Does not validate .blog { font-size: 1.1em; line-height: 1.6em; color: #fff; width: 100%; } @media all and (min-width: 20em) { .blog { font-size: 1.1em; line-height: 1.6em; color: #fff; width: 100%; } } { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 33. HTML 5 & CSS 3 3D Only in Chrome & Safari Perspective Distance in pixels Rotate3D Rotate three-dimensional Translate3D Move along three axes Scale3D Scale in three dimensions { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 34. HTML 5 & CSS 3 When to Use? IE 7 IE 8 A better future ahead IE 9 Firefox 3.5 Firefox 3.7 Opera 10.50 Safari 4 Chrome 4 http://html5readiness.com { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 35. HTML 5 & CSS 3 When to Use? A better future ahead http://caniuse.com { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 36. HTML 5 & CSS 3 Progressive Enhancement Websites do not have to look the same in every browser Progressive Enhancement != Graceful Degradation Do not lock anybody out (not even IE 6) http://dowebsitesneedtobeexperiencedexactlythesameineverybrowser.com/ Courtesy of alistapart.com { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 37. HTML 5 & CSS 3 Modernizr Test-Driven progressive enhancement Detect support for CSS 3 properties Feature detection Add support for HTML 5 elements { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 38. HTML 5 & CSS 3 Discussion !? { Agile Development } { Ruby on Rails } { Java / J2EE }
  • 39. { Agile Development } { Ruby on Rails } { Java / J2EE }

Editor's Notes