Création d'une page web
La page web qui s'affiche dans la fenêtre d'un navigateur est générée à partir d'un simple fichier texte.
Ce fichier est enregistré avec l'extension .html
et il est écrit en utilisant 2 langages : le HTML et le CSS.
Le langage de base est le langage de description HTML (HyperText Markup Langage).
Il permet de structurer le contenu de la page web, comme les titres, les paragraphes, les listes, les
tableaux, etc.
Le second langage est le CSS (Cascading Style Sheets). Celui-ci permet de faire la mise en forme, comme le choix des polices de caractères, les couleurs, etc.
Il fonctionne en attribuant aux balises HTML des propriétés qui définissent leur style.
Enfin il est possible d'ajouter de l'interactivité à une page web en utilisant le langage de programmation JavaScript.
Partie 1 : le langage HTML
Organisation générale
Le squelette d'un fichier .html
est le suivant :
<!DOCTYPE html>
<html lang="fr">
<head>
<meta charset="uft-8"/>
<title>Titre de la page</title>
<meta name="description" content="Résumé de la page."/>
<style>
...
</style>
</head>
<body>
...
</body>
</html>
Le langage HTML est un langage à balisage, par exemple l'ensemble du code de la page figure entre les balises :
<html lang="fr">
et </html>
.
La balise ouvrante est <html lang="fr">
et la balise fermante est </html>
. Ainsi les noms des balises sont entre chevrons et le nom de la balise fermante débute par un slash. Une balise ouvrante peut contenir un ou plusieurs attributs. Par exemple l'attribut lang="fr"
spécifie que le contenu de la page HTML est rédigé en langue française.
Le code HTML de la page se décompose en deux parties :
l'en-tête délimitée par les balises <head>
et </head>
C'est ici qu'on définit le titre de la page qui figurera dans l'onglet du navigateur, <title> ... </title>
ainsi que l'icone qui est devant (<link rel="icon" type="image/ico" href="image.ico" />
).
Elle contient aussi les différentes informations sur la page telles que la zone <style> ... </style>
rédigée en langage CSS et qui contient les instructions de mise en forme ou les scripts.
le corps délimité par les balises <body>
et </body>
c'est le contenu de la page web qui sera affiché par le navigateur.
Le corps commence généralement par un titre principal. Il peut-être constitué de plusieurs sous-sections et de paragraphes.
Quelques éléments du langage HTML
Les titres
Pour afficher un titre il faut utiliser :
un élément <h1>
pour le titre de plus haut niveau (titre principal),
un élément <h2>
pour un sous-titre de second niveau,
...
Les paragraphes
Le contenu d'un paragraphe doit figurer entre des balises <p>
et </p>
. Pour faire un saut de ligne dans un paragraphe il faut utiliser une balise <br/>
(elle n'a pas de balise fermante séparée, mais elle se termine par /
: il s'agit d'une balise auto-fermante).
Les hyperliens
Les hyperliens permettent de naviguer de pages en pages. Pour inclure un lien il faut utiliser une balise <a>
dont l'attribut href
indique le nom du fichier de la page de destination.
Exemple : <a href="une_autre_page.html">Aller à l'autre page</a>
Les images
Pour inclure une image dans un paragraphe il faut utiliser une balise <img>
. L'attribut src
doit obligatoirement être défini avec le nom du fichier qui contient l'image. Comme <br/>
, la balise <img>
est auto-fermante.
Exemple : <img src="mon_image.jpeg"/>
Pour plus d'informations, consulter le mémento des balises HTML5
Mémento des balises HTML5
Cette page est une liste non exhaustive des balises HTML qui existent. Vous trouverez ici un grand nombre de balises HTML. Nous en avons déjà vu certaines dans le cours, mais il y en a d'autres que nous n'avons pas eu l'occasion d'étudier. Généralement, les balises que nous n'avons pas étudiées sont des balises un peu plus rarement utilisées. Peut-être trouverez-vous votre bonheur dans ce lot de nouvelles balises.
Vous pouvez vous servir de cette annexe comme d'un aide-mémoire lorsque vous développez votre site web.
Attention, j'insiste : cette annexe n'est pas complète et c'est volontaire. Je préfère mettre moins de balises et garder seulement celles qui me semblent les plus utiles dans la pratique.
Mémento
Balises de premier niveau
Les balises de premier niveau sont les principales balises qui structurent une page HTML. Elles sont indispensables pour réaliser le « code minimal » d'une page web.
Balise | Description |
<html> | Balise principale |
<head> | En-tête de la page |
<body> | Corps de la page |
Balises d'en-tête
Ces balises sont toutes situées dans l'en-tête de la page web, c'est-à-dire entre <head>
et </head>
:
Balise | Description |
<link /> | Liaison avec une feuille de style |
<meta /> | Métadonnées de la page web (charset, mots-clés, etc.) |
<script> | Code JavaScript |
<style> | Code CSS |
<title> | Titre de la page |
Balises sectionnantes
Ces balises permettent de construire le squelette de notre site web.
Balise | Description |
<header> | En-tête |
<nav> | Liens principaux de navigation |
<footer> | Pied de page |
<section> | Section de page |
<article> | Article (contenu autonome) |
<aside> | Informations complémentaires |
Balises de structuration du texte
Balise | Description |
<abbr> | Abréviation |
<blockquote> | Citation (longue) |
<cite> | Citation du titre d'une œuvre ou d'un évènement |
<q> | Citation (courte) |
<sup> | Exposant |
<sub> | Indice |
<strong> | Mise en valeur forte |
<em> | Mise en valeur normale, italique |
<mark> | Mise en valeur visuelle |
<h1> | Titre de niveau 1 |
<h2> | Titre de niveau 2 |
<h3> | Titre de niveau 3 |
<h4> | Titre de niveau 4 |
<h5> | Titre de niveau 5 |
<h6> | Titre de niveau 6 |
<img /> | Image |
<figure> | Figure (image, code, etc.) |
<figcaption> | Description de la figure |
<audio> | Son |
<video> | Vidéo |
<source> | Format source pour les balises <audio> et <video> |
<a> | Lien hypertexte |
<br /> | Retour à la ligne |
<p> | Paragraphe |
<hr /> | Ligne de séparation horizontale |
<address> | Adresse de contact |
<del> | Texte supprimé |
<ins> | Texte inséré |
<dfn> | Définition |
<kbd> | Saisie clavier |
<pre> | Affichage formaté (pour les codes sources) |
<progress> | Barre de progression |
<time> | Date ou heure |
Balises de listes
Cette section énumère toutes les balises HTML permettant de créer des listes (listes à puces, listes numérotées, listes de définitions…)
Balise | Description |
<ul> | Liste à puces, non numérotée |
<ol> | Liste numérotée |
<li> | Élément de la liste |
<dl> | Liste de définitions |
<dt> | Terme à définir |
<dd> | Définition du terme |
Balises de tableau
Balise | Description |
<table> | Tableau |
<caption> | Titre du tableau |
<tr> | Ligne de tableau |
<th> | Cellule d'en-tête |
<td> | Cellule |
<thead> | Section de l'en-tête du tableau |
<tbody> | Section du corps du tableau |
<tfoot> | Section du pied du tableau |
Balises de formulaire
Balise | Description |
<form> | Formulaire |
<fieldset> | Groupe de champs |
<legend> | Titre d'un groupe de champs |
<label> | Libellé d'un champ |
<input /> | Champ de formulaire (texte, mot de passe, case à cocher, bouton, etc.) |
<textarea> | Zone de saisie multiligne |
<select> | Liste déroulante |
<option> | Élément d'une liste déroulante |
<optgroup> | Groupe d'éléments d'une liste déroulante |
Balises génériques
Les balises génériques sont des balises qui n'ont pas de sens sémantique.
En effet, toutes les autres balises HTML ont un sens : <p>
signifie « Paragraphe », <h2>
signifie « Sous-titre », etc.
Parfois, on a besoin d'utiliser des balises génériques (aussi appelées balises universelles) car aucune des autres balises ne convient. On utilise le plus souvent des balises génériques pour construire son design.
Il y a deux balises génériques : l'une est inline, l'autre est block.
Balise | Description |
<span> | Balise générique de type inline |
<div> | Balise générique de type block |
Ces balises ont un intérêt uniquement si vous leur associez un attribut class
, id
ou style
:
class
: indique le nom de la classe CSS à utiliser.
id
: donne un nom à la balise. Ce nom doit être unique sur toute la page car il permet d'identifier la balise. Vous pouvez vous servir de l'ID pour de nombreuses choses, par exemple pour créer un lien vers une ancre, pour un style CSS de type ID, pour des manipulations en JavaScript, etc.
style
: cet attribut vous permet d'indiquer directement le code CSS à appliquer. Vous n'êtes donc pas obligés d'avoir une feuille de style à part, vous pouvez mettre directement les attributs CSS. Notez qu'il est préférable de ne pas utiliser cet attribut et de passer à la place par une feuille de style externe, car cela rend votre site plus facile à mettre à jour par la suite.
Ces trois attributs ne sont pas réservés aux balises génériques : vous pouvez aussi les utiliser sans aucun problème dans la plupart des autres balises.
Masquer
Les caractères spéciaux
Il est utile de connaître le code de certains caractères spéciaux. Par exemple pour les symboles < et > qui peuvent prêter à confusion avec les balises... ou on a simplement besoin d'un symbole particulier (α, ©)
Pour plus d'informations, consulter la liste des caractère spéciaux
Caractères alphabétiques accentués et spéciaux |
caractère
|
code texte
|
code numérique
|
á |
á |
á |
Á |
Á |
Á |
â |
â |
â |
 |
 |
 |
à |
à |
à |
À |
À |
À |
å |
å |
å |
Å |
Å |
Å |
ã |
ã |
ã |
à |
à |
à |
ä |
ä |
ä |
Ä |
Ä |
Ä |
æ |
æ |
æ |
Æ |
Æ |
Æ |
ç |
ç |
ç |
Ç |
Ç |
Ç |
é |
é |
é |
É |
É |
É |
ê |
ê |
ê |
Ê |
Ê |
Ê |
è |
è |
è |
È |
È |
È |
ë |
ë |
ë |
Ë |
Ë |
Ë |
í |
í |
í |
Í |
Í |
Í |
î |
î |
î |
Î |
Î |
Î |
ì |
ì |
ì |
Ì |
Ì |
Ì |
ï |
ï |
ï |
Ï |
Ï |
Ï |
ñ |
ñ |
ñ |
Ñ |
Ñ |
Ñ |
ó |
ó |
ó |
Ó |
Ó |
Ó |
ô |
ô |
ô |
Ô |
Ô |
Ô |
ò |
ò |
ò |
Ò |
Ò |
Ò |
ø |
ø |
ø |
Ø |
Ø |
Ø |
õ |
õ |
õ |
Õ |
Õ |
Õ |
ö |
ö |
ö |
Ö |
Ö |
Ö |
œ |
œ |
œ |
Œ |
Œ |
Œ |
š |
š |
š |
Š |
Š |
Š |
ß |
ß |
ß |
ð |
ð |
ð |
Ð |
Ð |
Ð |
þ |
þ |
þ |
Þ |
Þ |
Þ |
ú |
ú |
ú |
Ú |
Ú |
Ú |
û |
û |
û |
Û |
Û |
Û |
ù |
ù |
ù |
Ù |
Ù |
Ù |
ü |
ü |
ü |
Ü |
Ü |
Ü |
ý |
ý |
ý |
Ý |
Ý |
Ý |
ÿ |
ÿ |
ÿ |
ÿ |
Ÿ |
Ÿ |
Caractères généraux |
caractère
|
code texte
|
code numérique
|
espace |
|
  |
- |
­ |
­ |
" |
" |
" |
« |
« |
« |
» |
» |
» |
‹ |
‹ |
‹ |
› |
› |
› |
“ |
“ |
“ |
” |
” |
” |
„ |
„ |
„ |
' |
' |
' |
‘ |
‘ |
‘ |
’ |
’ |
’ |
‚ |
‚ |
‚ |
… |
… |
… |
! |
! |
! |
¡ |
¡ |
¡ |
? |
? |
? |
¿ |
¿ |
¿ |
( |
( |
( |
) |
) |
) |
[ |
[ |
[ |
] |
] |
] |
{ |
{ |
{ |
} |
} |
} |
¨ |
¨ |
¨ |
´ |
´ |
´ |
` |
` |
` |
^ |
^ |
^ |
ˆ |
ˆ |
ˆ |
~ |
~ |
~ |
˜ |
˜ |
˜ |
¸ |
¸ |
¸ |
# |
# |
# |
* |
* |
* |
, |
, |
, |
. |
. |
. |
: |
: |
: |
; |
; |
; |
· |
· |
· |
• |
• |
• |
¯ |
¯ |
¯ |
‾ |
‾ |
‾ |
- |
- |
- |
– |
– |
– |
— |
— |
— |
_ |
_ |
_ |
| |
| |
| |
¦ |
¦ |
¦ |
† |
† |
† |
† |
‡ |
‡ |
§ |
§ |
§ |
¶ |
¶ |
¶ |
© |
© |
© |
® |
® |
® |
™ |
™ |
™ |
& |
& |
& |
@ |
@ |
@ |
/ |
/ |
/ |
\ |
\ |
\ |
◊ |
◊ |
◊ |
♠ |
♠ |
♠ |
♣ |
♣ |
♣ |
♥ |
♥ |
♥ |
♦ |
♦ |
♦ |
← |
← |
← |
↑ |
↑ |
↑ |
→ |
→ |
→ |
↓ |
↓ |
↓ |
↔ |
↔ |
↔ |
Monnaies |
caractère
|
code texte
|
code numérique
|
¤ |
¤ |
¤ |
€ |
€ |
€ |
$ |
$ |
$ |
¢ |
¢ |
¢ |
£ |
£ |
£ |
¥ |
¥ |
¥ |
ƒ |
ƒ |
ƒ |
Sciences |
caractère
|
code texte
|
code numérique
|
° |
° |
° |
µ |
µ |
µ |
< |
< |
< |
> |
> |
> |
≤ |
≤ |
≤ |
≥ |
≥ |
≥ |
= |
= |
= |
≈ |
≈ |
≈ |
≠ |
≠ |
≠ |
≡ |
≡ |
≡ |
± |
± |
± |
− |
− |
− |
+ |
+ |
+ |
× |
× |
× |
÷ |
÷ |
÷ |
⁄ |
⁄ |
⁄ |
% |
% |
% |
‰ |
‰ |
‰ |
¼ |
¼ |
¼ |
½ |
½ |
¼ |
¾ |
¾ |
¼ |
¹ |
¹ |
¹ |
² |
² |
² |
³ |
³ |
³ |
º |
º |
º |
ª |
ª |
ª |
ƒ |
ƒ |
ƒ |
′ |
′ |
′ |
′ |
″ |
″ |
∂ |
∂ |
∂ |
∏ |
∏ |
∏ |
∑ |
∑ |
∑ |
√ |
√ |
√ |
∞ |
∞ |
∞ |
¬ |
¬ |
¬ |
∩ |
∩ |
∩ |
∫ |
∫ |
∫ |
Caractères divers |
caractère
|
code texte
|
code numérique
|
→ |
⇒ |
⇒ |
↔ |
⇔ |
⇔ |
∀ |
∀ |
∀ |
∃ |
∃ |
∃ |
∇ |
∇ |
∇ |
∈ |
∈ |
∈ |
∋ |
∋ |
∋ |
∝ |
∝ |
∝ |
∠ |
∠ |
∠ |
⊥ |
∧ |
∧ |
⊦ |
∨ |
∨ |
∪ |
∪ |
∪ |
∴ |
∴ |
∴ |
∼ |
∼ |
∼ |
⊂ |
⊂ |
⊂ |
⊃ |
⊃ |
⊃ |
⊆ |
⊆ |
⊆ |
⊇ |
⊇ |
⊇ |
⊥ |
⊥ |
⊥ |
Caractères divers |
caractère
|
code texte
|
code numérique
|
⊕ |
⊕ |
⊕ |
℘ |
℘ |
℘ |
ℑ |
ℑ |
ℑ |
ℜ |
ℜ |
ℜ |
↵ |
↵ |
↵ |
← |
⇐ |
⇐ |
↑ |
⇑ |
⇑ |
↓ |
⇓ |
⇓ |
∅ |
∅ |
∅ |
∉ |
∉ |
∉ |
∗ |
∗ |
∗ |
≅ |
≅ |
≅ |
⊄ |
⊄ |
⊄ |
⊗ |
⊗ |
⊗ |
⋅ |
⋅ |
⋅ |
⌈ |
⌈ |
⌈ |
⌉ |
⌉ |
⌉ |
⌊ |
⌊ |
⌊ |
⌋ |
⌋ |
⌋ |
< |
⟨ |
〈 |
> |
⟩ |
〉 |
ℵ |
ℵ |
ℵ |
ϑ |
ϑ |
ϑ |
ϖ |
ϖ |
ϖ |
ϒ |
ϒ |
ϒ |
Alphabet Grec |
caractère
|
code texte
|
code numérique
|
α |
α |
α |
Α |
Α |
Α |
β |
β |
β |
Β |
Β |
Β |
γ |
γ |
γ |
Γ |
Γ |
Γ |
δ |
δ |
δ |
Δ |
Δ |
Δ |
ε |
ε |
ε |
Ε |
Ε |
Ε |
ζ |
ζ |
ζ |
Ζ |
Ζ |
Ζ |
η |
η |
η |
Η |
Η |
Η |
θ |
θ |
θ |
Θ |
Θ |
Θ |
ι |
ι |
ι |
Ι |
Ι |
Ι |
κ |
κ |
κ |
Κ |
Κ |
Κ |
λ |
λ |
λ |
Λ |
Λ |
Λ |
μ |
μ |
μ |
Μ |
Μ |
Μ |
ν |
ν |
ν |
Ν |
Ν |
Ν |
ξ |
ξ |
ξ |
Ξ |
Ξ |
Ξ |
ο |
ο |
ο |
Ο |
Ο |
Ο |
π |
π |
π |
Π |
Π |
Π |
ρ |
ρ |
ρ |
Ρ |
Ρ |
Ρ |
σ |
σ |
σ |
ς |
ς |
ς |
Σ |
Σ |
Σ |
τ |
τ |
τ |
Τ |
Τ |
Τ |
υ |
υ |
υ |
Υ |
Υ |
Υ |
φ |
φ |
φ |
Φ |
Φ |
Φ |
χ |
χ |
χ |
Χ |
Χ |
Χ |
ψ |
ψ |
ψ |
Ψ |
Ψ |
Ψ |
ω |
ω |
ω |
Ω |
Ω |
Ω |
Masquer
Aller à la partie 2 : le langage CSS