HTML, langage à balises des pages Web et des interfaces

On l'utilise pour écrire des pages Web, et c'est originellement un format standard de documents affichable localement par un navigateur ou un traitement de texte récent. Mais il est devenu un langage d'interface utilisateur pour les applications Web avec la version 5 et a ainsi supplanté Flash.

HTML markup language, exemple et logo

HTML, ou "HyperText Markup Language" est un sous-ensemble du SGML (inventé par IBM en 1969) défini par le consortium W3C. C'est un langage de description de document, qui utilise des balises pour les propriétés. C'est le format reconnu par les navigateurs web. DHTML, "Dynamic HTML", est la combinaison de HTML et JavaScript. CSS, "Cascading Style Sheet", ajoute les feuilles de style des traitements de texte au HTML.

Le développement a stagné à partir de la version 4, le W3C se polarisant sur XHTML mais sans pouvoir obtenir un consensus sur sa définition.
Une initiative indépendante, le WHATWG à donc relancé le standard sous le nom de HTML 5, ce qui a amené le W3C à se rallier à ce nouveau format et en faire le standard actuel.

HTML 5 n'est plus un format de documents mais un langage d'interface pour les applications en ligne ou même, avec les nouveaux système d'exploitation comme Firefox OS, Chrome OS, webOS, pour les applications locales. La section JavaScript de se site donne plusieurs exemples d'utilisation d'HTML comme interface d'application locale avec Node.js, même si le langage de programmation est PHP.

Originellement, le langage n'est pas extensible comme l'est XML. Le développeur ne peut pas ajouter de nouvelles balises et leur attribuer un rôle que les navigateurs puissent prendre en compte. Mais des frameworks HTML 5 implémentent le standard Web Components pour donner cette extensibilité, ce sont principalement Polymer, X-Tags de Mozilla et Angular. Ces composants d'interface utilisateur fonctionnant coté client peuvent éventuellement interagir avec le serveur grâce à Ajax, WebSocket, WebRTC.

Une syntaxe déclarative à balises

La syntaxe XML dont dérive HTML est verbeuse, ce pourquoi on lui préfère souvent JSON pour les fichiers de données à traiter par une application, mais elle a l'avantage de la lisibilité.

Exemple : Le code minimum pour afficher "Salut le monde!".

<!DOCTYPE html>
<html>
<head>
    <meta charset="utf-8">
    <title>Salut le Monde</title>
</head>
<body>
    <p>Salut, le Monde!</p>
</body>
</html>

La spécification de HTML et de tous les standards du Web est sur W3C, le site du consortium qui définit le langage.

On dispose de l'outil Validator pour tester la validité du code HTML.

Objets de formulaire en HTML 5 présente le code de tous les nouveaux objets pour voir s'ils sont implémentés par le navigateur.

Il existe de nombreux éditeurs HTML fonctionnant en mode WYSIWYG (édition directe dans la présentation finale) et bien conçus. En voici une liste: