HTML5 - Définition

Source: Wikipédia sous licence CC-BY-SA 3.0.
La liste des auteurs de cet article est disponible ici.

Introduction

HTML5
Extension HTML5: .html, .htm
XHTML5: .xhtml, .xht, .xml
Type MIME HTML5: text/html
XHTML5: application/xhtml+xml, application/xml
Développé par W3C
Type de format Hypertexte
Extension du HTML 4 et xHTML 1.1
Standard(s) W3C HTML5
Spécification Format ouvert

HTML5 (HyperText Markup Language 5) est la dernière révision du principal langage du web, HTML. HTML5 spécifie deux syntaxes d'un modèle abstrait défini en termes de DOM : HTML5 et XHTML5. Le langage comprend également une couche application avec de nombreuses API, ainsi qu'un algorithme afin de pouvoir traiter les documents à la syntaxe non conforme. Le travail a été repris par le W3C en mars 2007 après avoir été initié par le WHATWG. Les deux organisations travaillent en parallèle sur le même document afin de maintenir une version unique de la technologie.

Changements par rapport à HTML 4.X/XHTML 1.X

Spécification

Doctype

Tout comme HTML ou XHTML, les documents HTML5 nécessitent un Doctype indiquant la méthode de rendu standard au navigateur. Toutefois, pour les documents XML cette déclaration est facultative, le navigateur l'interprétant en mode standard par défaut.

Exemple d'utilisation avec HTML5

            <html lang="fr">      <head>          <meta charset="utf-8" />          <title>titre du site</title>                           <meta name="description" content="" />          <meta name="keywords" content="" />          <meta name="author" content="" />                           <link rel="shortcut icon" href="favicon.ico" />                    <link href="css/template.css" type="text/css" rel="stylesheet" media="screen" charset="utf-8" />             </head>      <body>                 
class="ma-class-en-css">

Voir aussi  : html5-profile

Il est à noter que la déclaration du Doctype n'est pas sensible à la casse et qu'il n'y a plus de référence à une DTD.

Exemple d'utilisation avec XHTML5

       version="1.0" encoding="UTF-8"?>       xmlns="http://www.w3.org/1999/xhtml">>      

Encodage

Le processus de détection de l'encodage a également été modifié et s'effectue dans l'ordre :

  1. Vérification de la présence d'un header HTTP "Content-Type" ;
  2. Détection du BOM en début de fichier ;
  3. Utilisation d'une balise meta spécifique ( par exemple, la syntaxe utilisée dans les versions précédentes étant toujours compatible)

Pour les documents XHTML5, l'auteur doit spécifier l'encodage dans le prologue XML :

       version="1.0" encoding="UTF-8"?>      

Nouvelles balises

  • section (Identifier un bloc de contenu)
  • article
  • aside (Insérer un contenu sans rapport avec la page)
  • header (Indiquer le haut de page (début de page) de la section concernée)
  • footer (Indiquer le pied de page de la section concernée)
  • nav (Indiquer une section avec beaucoup de liens internes au site)
  • figure
  • audio (Insérer un contenu Audio.)
  • video (Insérer un contenu Vidéo.)
  • embed
  • mark
  • meter
  • progress (Indiquer un niveau d'avancement)
  • time
  • canvas
  • command
  • details
  • keygen
  • output
  • ruby, rt et rp (pour les annotations ruby)

Il y a également de nouveaux types pour la balise input :

  • datetime
  • datetime-local
  • date
  • month
  • week
  • time
  • number
  • range
  • email
  • url
  • search
  • color

Nouveaux attributs

Pour la balise a :

  • media
  • ping
  • target (précédemment déprécié)

Pour la balise area :

  • hreflang
  • media
  • ping
  • rel
  • target (précédemment déprécié)

Pour la balise base :

  • target

Pour la balise button :

  • autofocus
  • form
  • formaction
  • formenctype
  • formmethod
  • formnovalidate
  • formtarget

Pour la balise fieldset :

  • disabled
  • form

Pour la balise form :

  • novalidate

Pour la balise html :

  • manifest

Pour la balise iframe :

  • sandbox
  • seamless

Pour la balise input :

  • autocomplete
  • autofocus (sauf lorsque l'attribut type est défini à hidden)
  • form
  • formaction
  • formenctype
  • formmethod
  • formnovalidate
  • formtarget
  • list
  • max
  • min
  • multiple
  • pattern
  • placeholder
  • required (sauf lorsque l'attribut type est défini à hidden, image ou les types de boutons tel que submit)
  • step

Pour la balise li :

  • value (précédemment déprécié)

Pour la balise link :

  • sizes

Pour la balise menu :

  • label
  • type

Pour la balise meta :

  • charset

Pour la balise ol :

  • reversed
  • start (précédemment déprécié)

Pour la balise script :

  • async

Pour la balise select :

  • autofocus (Présélectionne un élément lors du chargement de la page)
  • form

Pour la balise style :

  • scoped

Pour la balise textarea :

  • autofocus
  • form
  • placeholder
  • required

Ainsi que les attributs globaux qui s'appliquent à toutes les balises :

  • contenteditable
  • contextmenu
  • data-*
  • draggable
  • hidden
  • on* (gestionnaires d'événements)
  • spellcheck

Connexion et distribution 'P2P'

  • HTML 5 se voit doté de la capacité de réaliser des connexions entre utilisateurs PeerToPeerConnection(), et également grâce aux websockets.

Changements dans les balises et attributs

Les balises

  • basefont,
  • big,
  • center,
  • font,
  • s,
  • strike,
  • tt,
  • u,

ont été supprimées car leurs effets étaient purement représentatifs, ce qui est le rôle de CSS.

Les balises frame, frameset et noframes ont été supprimées elles-aussi, elles étaient déjà dépréciées car elles créaient des problèmes d'accessibilité et d'utilisation pour l'utilisateur final.

Les balises suivantes ont elles aussi été supprimées :

  • acronym n'est plus incluse car elle créait beaucoup de confusions;
  • applet est obsolète en faveur de object;
  • isindex, car elle peut être remplacée par l'utilisation des contrôleurs de formes;
  • dir est obsolète en faveur de ul.

Enfin, noscript n'est fournie que dans la version HTML, elle n'est pas incluse dans la version XML.

Dépréciation de balises

Dépréciation d'attributs

Sur la balise a

  • rev
  • charset
  • shape
  • coords

Sur la balise link

  • rev
  • charset
  • target

Sur la balise img

  • name (préférer l'attribut id)
  • longdesc

Sur la balise iframe

  • longdesc

Sur la balise area

  • nohref

Sur la balise head

  • nohref

Sur la balise html

  • version

Sur la balise meta

Sur la balise object

  • archive
  • classid
  • codebase
  • declare
  • standby

Sur la balise param

  • valuetype
  • type

Sur la balise td

  • axis
  • scope

Sur la balise th

  • axis

API

HTML5 introduit huit nouvelles APIs qui pourront aider à créer des applications web et qui peuvent être utilisées ensemble avec de nouveaux éléments introduits pour les applications dont :

  • une API de dessin 2D utilisé avec la nouvelle balise canvas;
  • une API pour jouer des vidéos et des sons/musiques utilisé avec les nouvelles balises video et audio;
  • une API utilisée pour les applications hors-lignes;
  • une API d'édition en combinaison avec le nouvel attribut contenteditable;
  • une API de drag and drop en combinaison avec l'attribut draggable;
  • une API qui permet l'accès à l'historique et permet aux pages d'en ajouter pour prévenir les problèmes de bouton retour-en-arrière.
Page générée en 0.007 seconde(s) - site hébergé chez Contabo
Ce site fait l'objet d'une déclaration à la CNIL sous le numéro de dossier 1037632
A propos - Informations légales | Partenaire: HD-Numérique
Version anglaise | Version allemande | Version espagnole | Version portugaise