Définition
L'Hypertext Markup Language, généralement abrégé HTML, est le langage informatique créé et utilisé pour écrire les pages Web. HTML permet en particulier d'insérer des hyperliens dans du texte, donc de créer de l'hypertexte, d'où le nom du langage.
Techniquement, HTML est une application du Standard Generalized Markup Language (SGML). Le développement de HTML proprement dit a cessé depuis 1999, et son successeur, le XHTML, est une application de l'Extensible Markup Language (XML).
L'anglais Hypertext Markup Language est rarement traduit littéralement en langage de balisage d'hypertexte. On utilise généralement l'abréviation, parfois même en répétant le mot « langage » dans langage HTML. Hypertext est parfois écrit HyperText pour marquer le T de l'abréviation HTML.
Langage de balisage hypertexte
HTML est un langage de description de documents. C'est une application du langage de balisage SGML.
Pour expliquer les balises HTML, voici un exemple:
<p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit.</p>
La phrase Lorem ipsum dolor (...) est délimitée par une balise d'ouverture <p> et une autre de fermeture </p>. Les balises servent de délimitation, <p></p> délimitant un paragraphe.
Certaines balises n'ont pas de contenu et apparaissent donc sans balise de fermeture. Sont notamment concernées la balise d'image <img>, la balise de séparation horizontale <hr> et la balise de retour à la ligne <br>.
Sémantique HTML
Tel qu'il a été pensé à ses origines par Tim Berners-Lee, le HTML ne sert pas à décrire le rendu visuel des pages Web (contrairement à la publication assistée par ordinateur), mais plutôt le sens des différentes parties du texte : titre, liste, mise en évidence... Cette séparation du fond et de la forme n'ont pas toujours été respectées au cours du développement du langage.
L'exemple le plus flagrant est celui de l'utilisation des tableaux en HTML. L'utilisation des tableaux devrait être limitée, comme son nom l'indique, à des données tabulaires (statistiques, fréquence, associations à deux dimensions, etc.), mais les créateurs de pages Web utilisent cet élément pour pallier un manque crucial d'éléments permettant de positionner n'importe où un élément HTML. Depuis, le CSS a fait son apparition, permettant de décrire la façon dont les éléments HTML doivent être positionnés.
Éléments de HTML
La version 4 de HTML décrit 91 éléments et 188 attributs. Certains attributs sont propres à un élément, d'autres s'appliquent à toute une série d'éléments et quelques attributs à tous les éléments. En suivant la spécification de HTML 4, les fonctionnalités implémentées par HTML peuvent être réparties ainsi :
Structure globale du document:
Au plus haut niveau, un document HTML est séparé entre un entête et un corps. L'entête contient les informations sur le document, notamment son titre. Le corps contient ce qui est affiché.
Informations sur la langue:
Il est possible d'indiquer la langue de n'importe qu'elle partie du document et de gérer le mélange de texte s'écrivant de gauche à droite avec du texte de droite à gauche.
Marquage sémantique du texte:
Une des fonctionnalités les plus anciennes et moins exploitées de HTML, qui permet de marquer chapitres et paragraphes, mais aussi emphase, extraits de code informatique, résultats de programmes, etc.
Tables:
Cette fonctionnalité a été développée pour permettre la présentation de données tabulaires mais a été immédiatement exploitée pour ses puissantes capacités de mise en page.
Hyperliens:
La fonctionnalité première de HTML!
Inclusion d'images, d'applets et d'objets divers.
Application de feuille de style:
Chaque élément, voire tout le document, peut se voir appliquer des styles. Ce sont généralement les feuilles de style en cascade (CSS) qui sont appliquées à HTML.
Marquage de présentation du texte:
Développé avant la généralisation de CSS pour fournir rapidement des fonctionnalités aux graphistes. D'usage désormais officiellement déconseillé pour la plus grande partie.
Cadres:
Aussi connu sous le nom de frames, une fonctionnalité souvent décriée qui permet d'afficher plusieurs documents HTML dans une même fenêtre.
Formulaire pour l'insertion interactive de données:
L'invention qui a permis l'appartion du commerce en ligne sur le Web.
Scripts:
Permet d'associer des morceaux de programmes aux actions des utilisateurs sur le document. Les langages utilisés sont généralement JavaScript et VBScript.
Accéder à une page HTML
C'est le protocole de communication HTTP qui, sur le Web, permet de transférer à partir d'un serveur HTTP, un document HTML. Lorsque le serveur HTTP reçoit une demande concernant un document, il est possible qu'il ait à générer une partie du document suivant les indications qu'aura eu soin de lui laisser l'auteur de la page. (cf. langages spécialisés web.)
Les documents HTML sont identifiés par une URL et sont interprétés par le navigateur Web du visiteur. Grâce à ce dernier, le document HTML apparaît à l'écran ou à l'impression comme l'auteur l'a voulu. Sont ainsi représentés texte, typographie, couleurs, tableaux, images, parfois du son, etc.
Interopérabilité
Le web dépend des auteurs de pages et des éditeurs de logiciels qui partagent les mêmes conventions pour HTML. Cela a motivé un travail commun sur les spécifications de HTML. Permettre aux documents HTML d'être accessibles sur des plates-formes et des navigateurs différents est fondamental dans la conception de ce langage.
L'ambition de Tim Berners-Lee était d'avoir un langage de description de documents au format ouvert qui soit indépendant de ce qui servirait à lire les pages. Par conséquent, il n'est pas prévu que telle ou telle police de caractère soit utilisée explicitement, ni que le moniteur du client utilise telle ou telle résolution. Le logiciel exploité pour la navigation devrait lui aussi ne pas être une source de discrimination.
Parvenir à l'interopérabilité permet de baisser les coûts des fournisseurs de contenus parce qu'ils n'ont à développer qu'une seule version d'un document. Si cet effort n'est pas fait, le risque est grand de voir le Web régresser vers un monde propriétaire de formats incompatibles, en réduisant en fin de compte son potentiel commercial au détriment de tous ses participants.
Chaque version HTML a essayé de refléter le plus grand consensus entre les acteurs de l'industrie, de sorte que les investissements consentis par les fournisseurs de contenus ne soient pas gaspillés et que leurs documents ne deviennent en peu de temps illisibles.
Le langage HTML a été développé avec l'intuition que les appareils de toutes sortes devaient pouvoir utiliser les informations sur le Web : les ordinateurs personnels avec des écrans de résolution et de profondeur de couleurs variables, les téléphones cellulaires, les appareils portables, les appareils de synthèse et de reconnaissance de la parole, les ordinateurs avec une bande passante faible comme élevée, et ainsi de suite.
Interopérabilité des caractères
Les caractères utilisés dans une page web posent parfois problème. Lors de l'utilisation des premières pages HTML, l'unicode n'était pas encore inventé. Aujourd'hui, il est normal qu'une page soit codée en UTF-8.
Toutefois, certains systèmes contiennent toujours des anomalies, qui font que le logiciel ne sait pas quel est l'encodage utilisé. A la fois HTML et HTTP permet de le préciser, mais l'information donnée est parfois fausse ou divergeante.
Comme on dit chez moi: "ça c'est fait"
Cette page est une introduction nécessaire pour comprendre le concept général du HTML; mais elle ne vous sera pas d'une grande utilité pour la suite!!!
Un grand merci au wikipedia pour ce document (version originale ici).