La version française de cette traduction est :
http://www.la-grange.net/w3c/html4.01/

Traducteur : Alix Marchandise-Franquet <alix@panhard.com> dans le cadre de l'effort de la liste de discussion w3c-translators.fr@w3.org
La version française peut contenir des erreurs. La version anglaise de cette note est l'unique version normative. Version originale : http://www.w3.org/TR/1999/REC-html401-19991224


2 Introduction à HTML 4

Table des matières

  1. Qu'est-ce que le World Wide Web ?
    1. Introduction aux URI
    2. Les identifiants de fragment
    3. Les URI relatifs
  2. Qu'est-ce que HTML ?
    1. Une brève histoire de HTML
  3. HTML 4
    1. L'internationalisation
    2. L'accessibilité
    3. Les tables
    4. Les documents composés
    5. Les feuilles de styles
    6. Les scripts
    7. L'impression
  4. La création de document avec HTML 4
    1. Séparer la structure et la présentation
    2. Considérer l'accès universel au Web
    3. Aider les agents utilisateurs dans la restitution progressive

2.1 Qu'est-ce que le World Wide Web ?

Le World Wide Web (Web) est un réseau de ressources et d'informations. Le Web repose sur trois mécanismes pour rendre ces données facilement disponibles le plus largement possible :

  1. un système de nommage uniforme pour leur localisation sur le Web (par exemple, les URI) ;
  2. des protocoles, pour accéder à des ressources nommées dont on possède l'adresse (par exemple, HTTP) ;
  3. l'hypertexte, pour faciliter la navigation entre ces ressources (par exemple, HTML).

Les liens entre ces trois mécanismes apparaissent clairement tout au long de cette spécification.

2.1.1 Introduction aux URI

Chaque ressource disponible sur le Web -- document HTML, image, séquence vidéo, programme, etc. -- possède une adresse représentée sous la forme d'un identifiant de ressource uniforme ou URI.

Les URI sont formés de trois parties distinctes :

  1. le nom du protocole utilisé pour accéder à la ressource ;
  2. le nom de la machine hébergeant la ressource ;
  3. le nom de la ressource en question, indiqué sous la forme d'un chemin.

Prenons, pour exemple, l'URI qui désigne la page des rapports techniques du W3C :

	http://www.w3.org/TR

Cet URI peut être compris comme suit : il est disponible via le protocole HTTP (voir [RFC2616]), hébergé sur la machine nommée « www.w3.org » et accessible par le chemin "/TR". On peut rencontrer d'autres systèmes dans les documents HTML, par exemple, comme "mailto" pour un e-mail ou "ftp" pour le protocole FTP.

Voici un autre exemple d'URI, qui pointe sur la boîte aux lettres d'un utilisateur :

... un texte...
Pour tout commentaire, envoyez un e-mail à
<A href="mailto:jean@quelquepart.com">Jean BON</A>.

Remarque : La plupart des lecteurs connaît probablement le terme « URL » et non le terme « URI ». Les URL forment un sous-ensemble du système de nommage plus général URI.

2.1.2 Les identifiants de fragment

Certains URI se rapportent à un endroit dans une ressource. Ce genre d'URI se termine par un caractère « # », suivi par l'identifiant d'une ancre (appelé identifiant de fragment ). Par exemple, voici un URI qui pointe sur l'ancre section_2 de la page top.html :

http://unsite.com/html/top.html#section_2

2.1.3 Les URI relatifs

Un URI relatif ne comporte pas de nom de protocole ni de nom de machine. Son chemin se rapporte généralement à une ressource disponible sur la même machine que le document courant. Les liens relatifs peuvent comporter d'autres composants de chemin relatifs (par exemple, ces caractères « .. » signifient le niveau supérieur dans la hiérchie définie par le chemin) et des identifiants de fragment.

Les URI relatifs se résolvent en URI complets, en utilisant l'URI de base. Comme exemple de résolution d'URI relatif, prenons l'URI de base : "http://www.acme.com/support/intro.html". Dans le balisage de lien hypertexte ci-dessous :

  <A href="fournisseurs.html">Fournisseurs</A>

l'URI relatif se développerait en l'URI complet "http://www.acme.com/support/fournisseurs.html", tandis que pour le balisage de l'image ci-dessous :

  <IMG src="../icones/logo.gif" alt="logo">

l'URI relatif se développerait en l'URI complet "http://www.acme.com/icones/logo.gif".

En HTML, les URI s'utilisent pour :

errata-04

Veuillez consulter la section concernant le type URI pour plus d'informations.

2.2 Qu'est-ce que HTML ?

Publier de l'information en vue d'une distribution mondiale nécessite l'usage d'un langage universellement compréhensible, d'une sorte de « langue maternelle » acceptée par tous les ordinateurs. Le langage de publication utilisé sur le World Wide Web est le langage de balisage hypertexte HTML.

HTML donne aux auteurs les moyens de :

2.2.1 Une brève histoire de HTML

Le langage HTML a été développé à l'origine par Tim Berners-Lee, alors au CERN, et popularisé par le navigateur Mosaic, développé au NCSA. Pendant les années 1990, il s'est épanoui en profitant de la croissance explosive du Web. Durant cette période, HTML s'est agrandi de nombreuses manières différentes. 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.

La spécification HTML 2.0 (novembre 1995, voir [RFC1866]) a été développé sous l'égide de l'Internet Engineering Task Force (IETF) pour codifier les pratiques courantes à la fin de 1994. Les spécifications HTML+ (1993) et HTML 3.0 (1995, voir [HTML30]) proposaient des versions HTML bien plus riches. Malgré l'absence de consensus autour d'un standard, ces avant-projets ont conduit à l'adoption d'un éventail de fonctions nouvelles. Les efforts du groupe de travail HTML du World Wide Web Consortium pour la codification des pratiques courantes en 1996 donnèrent naissance à la spécification HTML 3.2 (janvier 1997, voir [HTML32]). Les changements intervenus entre HTML 3.2 et HTML 4 sont résumés dans l'appendice A.

La plupart des gens sont d'accord sur le fait que les documents HTML devraient fonctionner correctement sur des plates-formes et des navigateurs différents. 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.

2.3 HTML 4

La spécification HTML 4 prolonge HTML avec des mécanismes pour les feuilles de styles, les scripts, les cadres, l'incorporation des objets, la gestion améliorée des écritures de droite à gauche ou mixtes, les tables enrichies et les améliorations des formulaires, qui augmentent l'accessibilité pour les personnes ayant un handicap physique.

La spécification HTML 4.01 est une révision de HTML 4 qui corrige des erreurs et apporte certains changements depuis la révision précédente.

2.3.1 L'internationalisation

Cette version de HTML a été conçue avec l'aide d'experts dans le domaine de l'internationalisation, de telle sorte que les documents peuvent être écrits en toutes langues et diffusés partout dans le monde. Cela a été accompli en tenant compte du document [RFC2070], qui traite de l'internationalisation de HTML.

L'adoption de la norme ISO/IEC:10646 (voir [ISO10646]), comme jeu de caractères du document pour HTML, a représenté une étape importante. C'est la norme mondiale la plus complète, qui tient compte des problèmes concernant la représentation des caractères internationaux, le sens des écritures, la ponctuation et autres particularités des langues mondiales.

Le langage HTML propose maintenant une meilleure gestion des diverses langues humaines à l'intérieur du document. Cela permet une efficacité accrue dans l'indexation des documents par les moteurs de recherche, la typographie de qualité, la syntèse de la parole à partir du texte, la césure, etc.

2.3.2 L'accessibilité

Au fur et à mesure de la croissance de la communauté du Web et de la diversification des capacités et aptitudes de ses membres, il devient crucial que les technologies employées soient appropriées à leurs besoins spécifiques. Le langage HTML a été conçu pour rendre les pages Web plus accessibles à ceux qui ont des déficiences physiques. Les développements de HTML 4 qui ont été inspirés par ce souci de l'accessibilité comprennent :

Les auteurs qui composent des pages en tenant compte de ces notions d'accessibilité ne seront pas seulement remerciés par les utilisateurs intéressés mais en retireront aussi d'autres bénéfices : les documents HTML bien conçus, qui distinguent la structure de la présentation, s'adapteront plus facilement aux nouvelles technologies.

Remarque : Pour plus d'informations sur la conception de documents HTML accessibles, veuillez consulter [WAI].

2.3.3 Les tables

Le nouveau modèle de la table se base sur le document [RFC1942]. Les auteurs disposent maintenant d'un plus grand contrôle sur leur structure et leur disposition (par exemple, les regroupements de colonnes). La possibilité dont disposent les auteurs de spécifier la largeur des colonnes permet aux agents utilisateurs d'afficher les données de table progressivment (au fur et à mesure du chargement), plutôt que d'attendre le chargement entier de la table avant de pouvoir la restituer.

Remarque : Au moment de la rédaction de la spécification, certains logiciels d'édition HTML s'appuient essentiellement sur les tables pour la mise en page, ce qui peut aisément entraîner des problèmes d'accessibilité.

2.3.4 Les documents composés

Le langage HTML offre maintenant une structure standard pour l'incorporation d'objets média et d'applications génériques dans les documents HTML. L'élément OBJECT (de même que ses ancêtres, les éléments plus spécifiques IMG et APPLET) fournit le moyen d'inclure des images, des séquences vidéo, de l'audio, des mathématiques, des applications spécialisées et d'autres objets dans un document. Il permet aussi aux auteurs de spécifier une hiérarchie de restitutions de remplacement aux agents utilisateurs qui ne gèrent pas certaines restitutions particulières.

2.3.5 Les feuilles de styles

Les feuilles de styles simplifient le balisage HTML et soulagent grandement HTML des responsabilités de la présentation. Elles donnent aux auteurs comme aux utilisateurs le contrôle de la présentation des documents -- informations sur les polices de caractères, alignement, couleurs, etc.

Les informations de style peuvent être spécifiées pour un élément ponctuel ou pour des groupes d'éléments. Elles peuvent se trouver à l'intérieur du document HTML ou dans une feuille de styles externe.

Les mécanismes, qui associent une feuille de styles à un document, sont indépendants du langage de feuille de style.

Avant l'apparition des feuilles de styles, les auteurs disposaient d'un contrôle limité sur la restitution des pages. HTML 3.2 comprenait un certain nombre d'attributs et d'éléments permettant un contrôle de l'alignement, de la taille de la police de caractères et de la couleur du texte. Les auteurs abusaient également de tables et d'images pour la mise en page. Le temps relativement long nécessaire pour que les utilisateurs mettent à jour leurs navigateurs implique que ces usages vont perdurer encore pendant un certain temps. Cependant, puisque les feuilles de styles offrent des moyens de présentation plus puissants, le World Wide Web Consortium fera graduellement disparaître nombre d'éléments et d'attributs de présentation HTML. Tout au long de ce document, les éléments et attributs concernés sont marqués comme « déconseillés ». Ils sont généralement accompagnés d'exemples montrant comment parvenir au même résultat en utilisant d'autres éléments ou les feuilles de styles.

2.3.6 Les scripts

Au travers de scripts, les auteurs peuvent concevoir des pages Web dynamiques (par exemple, des « formulaires intelligents » qui réagissent au cours de leur remplissage par l'utilisateur) et utiliser HTML comme support d'applications en réseau.

Les mécanismes fournis pour associer HTML et scripts sont indépendants du langage de script.

2.3.7 L'impression

Les auteurs voudront parfois aider l'utilisateur dans l'impression d'autres documents, en plus du document courant. Lorsque des documents font partie d'un ensemble, on peut décrire leurs relations en utilisant l'élément HTML LINK ou encore en utilisant le cadre de description des ressources (RDF) du W3C (voir [RDF10]).

2.4 La création de document avec HTML 4

Nous recommandons aux auteurs et aux développeurs d'observer les principes généraux suivants dans leur travail avec HTML 4.

2.4.1 Séparer la structure et la présentation

Le langage HTML trouve ses racines dans SGML qui a toujours été un langage destiné à la spécification d'un balisage de structures. Avec la maturité, les éléments et attributs de présentation HTML sont de plus en plus remplacés par d'autres mécanismes, en particulier les feuilles de styles. L'expérience montre que la séparation de la structure d'un document de sa présentation permet de réduire les coûts de diffusion vers un grand éventail de plates-formes, de médias, etc., et facilite la mise à jour des documents.

2.4.2 Considérer l'accès universel au Web

De manière à rendre le Web plus accessible à tous, notamment aux personnes avec un handicap physique, les auteurs devraient prendre en compte la façon dont leurs documents seront interprétés sur une grande variété de plates-formes : les navigateurs commandés à la voix, les lecteurs en Braille, etc. Nous ne demandons pas aux concepteurs de brider leur créativité, seulement que leurs créations intègrent les restitutions alternatives. HTML propose nombre de mécanismes à cet effet (par exemple, les attributs alt, accesskey, etc.)

En outre, les auteurs devraient garder à l'esprit que leurs documents peuvent aussi toucher des publics éloignés, dont les ordinateurs sont configurés très différemment. Pour qu'un document soit correctement interprété, les auteurs devraient y inclure des informations sur la langue naturelle et le sens d'écriture, sur l'encodage employé et d'autres aspects relatifs à l'internationalisation.

2.4.3 Aider les agents utilisateurs dans la restitution progressive

En concevant soigneusement leurs tables et en faisant appel aux nouvelles fonctionnalités des tables de HTML 4, les auteurs peuvent aider les agents utilisateurs à restituer les documents plus rapidement. Les auteurs peuvent apprendre à concevoir des tables pour leur restitution progressive (voir l'élément TABLE). Les développeurs peuvent consulter les remarques sur les tables dans l'appendice pour des informations sur les algorithmes progressifs.