Élément HTML

Un article de Wikipédia, l'encyclopédie libre.
Aller à : navigation, rechercher
image illustrant l’informatique
Cet article est une ébauche concernant l’informatique.

Vous pouvez partager vos connaissances en l’améliorant (comment ?) selon les recommandations des projets correspondants.

Ce modèle est-il pertinent ? Cliquez pour en voir d'autres.
Cet article n’est pas rédigé dans un style encyclopédique (9 juillet 2016).

Vous pouvez améliorer sa rédaction !

En informatique, un élément HTML indique la structure d'un document HTML. Jusqu'à la version 4.01 incluse de ce format, un élément HTML est un élément SGML qui satisfait aux exigences d'une ou plusieurs définitions de type de document (DTD) de HTML. Ces éléments ont des propriétés : les attributs et le contenu, comme spécifié (à la fois autorisé et exigé) selon la DTD HTML appropriée (par exemple, le HTML 4.01 strict DTD). Les éléments peuvent représenter des en-têtes, des paragraphes, des liens hypertextes, des listes, des médias encapsulés, et diverses autres structures.

La version 4 de HTML définit 91 éléments.

Niveau bloc et niveau texte[modifier | modifier le code]

La plupart des éléments HTML du corps du document sont classés soit au niveau bloc, soit au niveau texte.

  • Éléments de niveau bloc (block) — par ex. titres de section, paragraphes, listes, tableaux : ce sont des structures qui contiennent d'autres blocs, des éléments de niveau texte, ou du texte. En général, ils sont affichés comme des blocs séparés des autres blocs par des espaces verticaux (marges).
  • Éléments de niveau texte (inline) — par ex. hyperliens, citations, images : ces éléments représentent ou décrivent du texte ou des données. Ils peuvent contenir seulement du texte ou d'autres éléments de niveau texte, et sont habituellement affichés l'un après l'autre sur une ligne à l'intérieur du bloc qui les contient.

(Voir "The global structure of an HTML document")

Éléments racines[modifier | modifier le code]

Les éléments racines sont des conteneurs qui renferment tous les autres éléments HTML. Chaque page HTML contient ces éléments.

<html></html>

Délimite un document HTML (à la place d'un document XML ou d'une classe). La langue primaire du document HTML peut être définie avec l'attribut lang (avec par ex. en pour anglais). Le seul contenu autorisé est soit un élément <head> et un élément <body>, soit un élément <head> et un élément <frameset>.

<head></head>

Délimite la section d'en-tête du document, qui contient l'information sur la page web. L'élément <head> contient principalement les métadonnées du document. Il y a sept éléments d'en-tête possibles qui incluent un élément meta pour une spécification extensible des métadonnées.

<body></body>

Délimite le corps du document.

Ces éléments racines sont organisés comme suit :

<html>
   <head>
     <!-- Cette section peut contenir n'importe quels éléments d'en-tête qui peuvent être organisé de n'importe quelle façon et apparaître autant de fois que souhaité, à l'exception de <base> et <title> qui ne peuvent apparaître qu'une seule fois chacun. Le seul élément obligatoire de l'en-tête (délimitée entre les balises <head> et </head>) est : <title>. -->
   </head>
   <body>
      <!-- Ne peut avoir comme enfants directs que des éléments de type %block en HTML strict, mais admet également des éléments de type %inline ou du texte anonyme en HTML transitionnel. -->
   </body>
</html>

Éléments d'en-tête[modifier | modifier le code]

<title></title>[modifier | modifier le code]

L'élément <title> est le seul élément obligatoire d'un document HTML. Bien qu'il soit requis pour qu'un document soit valide, la plupart des navigateurs les plus populaires ne réagiront pas à son absence. Il est placé entre les balises <head></head>. Le contenu de cet élément sera utilisé par le navigateur de l'usager pour désigner la page (par exemple sur l'onglet ou dans les favoris), ainsi que par les moteurs de recherche. L'élément <title> ne peut apparaître qu'une seule fois dans le document HTML. Il sert généralement à identifier sommairement le contenu de la page. Il ne fait pas partie du contenu du document, mais est plutôt une propriété de celui-ci. Théoriquement, il n'y a pas de limite au nombre de caractères que peut contenir <title>, par contre les navigateurs en limitent généralement l'affichage. Également, aucune autre balise HTML n'y sera interprété.

<base>[modifier | modifier le code]

La balise <base> permet d'indiquer depuis quel site ou répertoire vous souhaitez partir. Pour cela vous devez indiquer le chemin absolu vers le répertoire cible. Par exemple, si vous êtes dans le dossier www et que vous indiquez dans votre code un chemin vers le fichier index.html, sans base, vous allez mener au chemin http://votre-site.com/www/index.html.
Cependant si vous indiquez une base, par exemple http://votre-site.com/pages/, ce même lien va mener à http://votre_site.com/pages/index.html.
Syntaxe : <base href="votre_chemin"/>

<link>[modifier | modifier le code]

Cet élément spécifie les liens vers d'autres documents, comme les liens previous (précédent) et next (suivant), ou des versions alternatives. Un en-tête HTML peut contenir un nombre quelconque d'éléments <link>. L'élément <link> a des attributs, mais pas de contenu. On l'utilise couramment pour créer des liens avec des feuilles de style externes, en utilisant la formulation suivante : <link rel="stylesheet" type="text/css" href="url">.

<script></script>[modifier | modifier le code]

Cet élément permet d'inclure du code de script (le plus souvent en JavaScript), souvent pour rendre la page interactive. Au cas où le navigateur d'un visiteur ne reconnaît pas la balise, le W3C recommande de mettre le code en commentaire :

<script>
//<!--
Code du script
//-->
</script>

<noscript></noscript>[modifier | modifier le code]

Ces balises permettent d'insérer dans la page des éléments qui seront affichés uniquement dans le cas où le navigateur n'est pas capable d'interpréter des scripts.

<style></style>[modifier | modifier le code]

Cet élément permet d'inclure des informations de style au format CSS.

<object></object>[modifier | modifier le code]

Permet l'insertion d'un objet en précisant sa nature par l'attribut type. Il peut s'agir d'un Applet Java, d'une Application Flash, d'une vidéo, d'un son…

<meta>[modifier | modifier le code]

Article détaillé : Élément meta.

Cet élément peut être utilisé pour spécifier l’auteur, la date de publication, la date d’expiration, la description de page, les mots-clés et tout autre métadonnée qui n’est pas fournie à travers les autres éléments et attributs d’en-tête (head). En raison de leur caractère générique, les éléments meta spécifient des combinaisons clef/valeur (en).[1].

Dans un formulaire, les éléments meta peuvent spécifier les en-têtes HTTP qui doivent être envoyés avant le contenu réel quand la page HTML est servie d’un serveur web au client. Par exemple :

<meta http-equiv="foo" content="bar">

Cet exemple spécifie que la page doit être servie avec un en-tête HTTP appelé « foo » qui a une valeur « bar ».

Dans le formulaire général, un métaélément spécifie le nom (name) et les attributs de contenu (content) associés qui décrivent des aspects de la page HTML. Afin d’éviter d’éventuelles ambiguïtés, un troisième attribut optionnel scheme peut être fourni pour spécifier un cadre sémantique qui définit la signification de la clé et sa valeur. Par exemple:

<meta name="foo" content="bar" scheme="DC">

Dans cet exemple, la métadonnée :

Pour plus d’information sur l’utilisation du métaélément dans HTML, voir la spécification W3C.

Bloc[modifier | modifier le code]

Beaucoup d'éléments HTML sont conçus pour modifier la structure sémantique ou la signification d'un document. Certains sont au niveau bloc, mais la plupart sont au niveau ligne et peuvent être inclus dans le corps de texte normal.

Éléments bloc généraux[modifier | modifier le code]

<p> : Balise de type block, elle correspond à la création d'un nouveau paragraphe.
Syntaxe :

<p>Mon texte...</p>

La balise de fermeture n'est pas nécessaire en HTML. Elle est cependant obligatoire en xHTML !

Niveau ligne[modifier | modifier le code]

Expression générale[modifier | modifier le code]

Expression de code informatique[modifier | modifier le code]

Éléments spéciaux de niveau ligne[modifier | modifier le code]

Liens[modifier | modifier le code]

Les liens, ou hyperliens, sont l'un des éléments les plus basiques et importants.

Le code pour insérer un lien est simple :

<a href="Votre lien">Ceci est un lien</a>

La balise ouvrante est <{{{1}}}>, la balise fermante est </a>. Entre les guillemets, il faut indiquer l'URL complète du lien sauf dans un certain cas que nous verrons après. L'URL complète, cela veut dire que vous insérez ce qui s'affiche dans la barre d'adresse lorsque vous naviguez sur la page en question. Peu importe le site vers lequel vous voulez porter un lien, cette technique fonctionnera toujours.

Exemple d'URL : http://fr.wikipedia.org/wiki/Hypertext_Markup_Language

Ce qui nous donne, en code:

L'article de Wikipédia sur le html

L'option "target" permet d'indiquer si la cible est ouverte dans la même fenêtre ou dans une nouvelle fenêtre du navigateur[2]. Exemple:

L'article dans une nouvelle fenêtre

Images et objets[modifier | modifier le code]

<img>

Utilisation :

<img src="votre_image.jpg">

La balise image est associée à une URL source via l'attribut "src". Autrement dit, vous insérez le chemin d'accès à l'image entre les "" pour définir l'image à insérer.

On peut modifier d'autres propriétés de l'image avec les attributs suivants:

width="150"
 règle la largeur de l'image sur 150 pixels.
height="150"
 règle la hauteur de l'image sur 150 pixels.
title="Message"
 insère un message qui sera affiché lorsque l'on laisse la souris sur l'image.

Une balise pixel est une image électronique, en principe de la taille d’un pixel (1x1) et invisible pour les visiteurs du site. Celle-ci peut être associée aux cookies sur le disque dur des visiteurs, et permettre par exemple de savoir par la suite si tel ou tel élément a été ouvert, notamment lors de la réception d'un courriel.

<span></span>[modifier | modifier le code]

Balise générique de niveau texte qui n'a pas de signification particulière.

Syntaxe :

La voiture <span style="color:rgb(255,0,0)">rouge</span>.

affichera : La voiture rouge.


Elle est généralement utilisée pour décorer une phrase ou un groupe de mots. Elle va de pair avec la balise <div>...</div> qui elle est de type block.

Jeu de cadres[modifier | modifier le code]

Le système des cadres regroupe quatre balises HTML :

<frameset>[modifier | modifier le code]

Standard HTML 4.0 obsolète en HTML 5.

Conteneur de cadres d'un document. Un document HTML contient soit un élément body, soit un élément frameset[3]. Ce dernier définit alors l'étendue de la fenêtre d'affichage où vont apparaître les cadres (éléments frame) qu'il contient. Chaque cadre contient un document HTML à part entière. Leur mise en page est définie par des listes séparées par des virgules, des attributs HTML rows et cols.

Les jeux de cadre permettent de partager des données en employant un élément OBJECT dans l'élément HEAD d'un document frameset[4]

<frame>[modifier | modifier le code]

Standard HTML 4.0 obsolète en HTML 5.

Défini un seul cadre ou une région du frameset. Un document séparé peut être affiché avec l'attribut frame nommé src.

Il est aussi possible de prendre un frame pour cible d'autres document HTML. Pour cela, il suffit d'assigner un nom au frame via l'attribut "name", il sera alors considéré par les "authors" comme la cible ("target") de liens définis par d'autres documents. L'attribut TARGET peut être placé pour des éléments qui créent des liens (A, LINK), des image maps (AREA), et des forms (FORM)[5].

<noframes>[modifier | modifier le code]

Standard HTML 4.0 obsolète en HTML 5.

L'élément noframes permet de définir un contenu HTML alternatif pour les agents utilisateurs qui n'implémentent pas la technologie des cadres.

Exemple[modifier | modifier le code]

<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Frameset//EN"
   "http://www.w3.org/TR/html4/frameset.dtd">
<html>
<head>
<title>A simple frameset document</title>
</head>
<frameset cols="20%, 80%">
  <frameset rows="100, 200">
      <frame src="contents_of_frame1.html">
      <frame src="contents_of_frame2.gif">
  </frameset>
  <frame src="contents_of_frame3.html">
  <noframes>
      <p>This frameset document contains:
      <ul>
         <li><a href="contents_of_frame1.html">Some neat contents</a></li>
         <li><img src="contents_of_frame2.gif" alt="A neat image"></li>
         <li><a href="contents_of_frame3.html">Some other neat contents</a></li>
      </ul>
  </noframes>
</frameset>
</html>

<iframe>[modifier | modifier le code]

Standard HTML 4.0 autorisé en HTML 5.

Introduite en 1997 par Microsoft Internet Explorer, la balise iframe signifie inline frame (cadre en ligne). Elle affiche un autre document HTML dans une frame. Mais contrairement à l'élément object, elle peut être la cible de liens définis par d'autres éléments, et peut être sélectionnée par l'agent utilisateur pour imprimer, afficher la source, etc.

Le contenu de l’élément est utilisé comme texte alternatif pour les navigateurs qui ne supportent pas les iframes.

Exemple :

<!DOCTYPE html>
<html>
  <head>
    <title>Document avec une iframe</title>
  </head>
  <body>
    <iframe src="http://www.w3schools.com">Impossible d'afficher l'iframe</iframe> 
  </body>
</html>

Les sites Facebook et Twitter utilisent des iframes pour afficher directement les contenus de sites web tiers. Google AdSense quant-à-lui s'en sert pour que ses bannières publicitaires apparaissent sur d'autres sites.

Voir aussi[modifier | modifier le code]

Notes et références[modifier | modifier le code]

Liens externes[modifier | modifier le code]