Apprendre a créer votre site web
========================
Les balises les plus utilisées sont les suivantes:
Balise Fonction
<!-- --> Commentaire
<a> Lien hypertext
<b> Texte en gras
<body> Corps de la page
<br /> Permet de sauter une ligne
<caption> Titre d'un tableau
<cite> Citation
<div> Division
<em> Emphase ( italique )
<fieldset> Permet de regrouper des éléments d'un formulaire
<form> Formulaire
<frame> Frame
<h1> Titre d'importance 1
<h2> Titre d'importance 2
<h3> Titre d'importance 3
<h4> Titre d'importance 4
<h5> Titre d'importance 5
<h6> Titre d'importance 6
<head> Entête d'un fichier
<hr> Séparateur horizontal
<html> Balise obligatoire pour déclarer le debut du code html
<i> Italique
<img /> Image
<input /> Elément du formulaire
<label> Description d'un champ
<li> Composant d'une liste ( ul ou ol )
<legend> Légende d'un tableau
<meta> Information sur la page
<noscript> Le texte indiqué sera affiché dans le cas
où le navigateur n'accepte pas les scripts
<object> Element multimédia
<ol> Liste numéroté, associé à la balise li
<option> Entrée de la base select
<pre> Respecte le contenu HTML pour les espaces.
<script> Insertion de script
<span> Division comme la balise div l'affichage est différent
<strong> Texte en gras
<style> Insertion de style ( CSS )
<sub> Texte en indice
<sup> Texte en exposant
<table> Tableau
<td> Cellule de tableau
<textarea> Champ composé de plusieurs lignes
<th> Cellule d'entête d'un tableau
<title> Titre de la page
<tr> Nouvelle ligne d'un tableau
<ul> Liste non numéroté
=============================================
Dans l'exemple ci-dessus, l'attribut "name" de la base "meta" a pour valeur "description".
Cela permet de dire au navigateur que la balise meta - qui est une balise d'information -
nous informe de la description du site. Pour cette balise la valeur se met dans l'attribut "content".
Liste attributs HTML
Attribut Elément Description
accept <form>, <input> Les type de fichier accepté par le serveur
accept-charset <form> Type d'encodage supporté
accesskey TOUS Définit un raccoucrci clavier pour activer ou sélectionner un élément
action <form> L'URL du script qui traitera les valeurs du formulaire
align <caption>, <hr>, <iframe>, <img>, <table>, <td>, <th> Définit l'alignement horizontal de l'élément. Exemple: left, right, center et justify.
alt <area>, <img>, <input> Texte alternatif lorsque l'élément ne peut être affiché.
async <script> Exécute le script en asynchrone
autocomplete <input>, <select>, <textarea> Propriété qui permet d'afficher ou non des propositions de complétion de texte à l'utilisateur
autofocus <input>, <select>, <textarea> L'élement est sélectionné au chargement de la page
autoplay <audio>, <video> Chargement automatique de l'élement multimédia.
charset <meta>, <script> Définit le type de codage de l'élement
checked <input> Indique si l'élément est coché
class TOUS Permet d'associer une classe à un élément
cols <textarea> Indique le nombre de colonne de l'élément
colspan <td>, <th> Permet de fusionner x cellule d'un tableau horizontalement
data-* TOUS Permet de créer ses propres attributs. Exemple data-user="1"
dir TOUS Indique le sens de lecture. Exemple ltr pour (left to right) et rtl ( right to left )
disabled TOUS Permet de bloquer l'édition de l'élément et rend l'élement illisible pour la validation du formulaire.
download <a>, <area> Indique que l'hyperlien doit être utilisé pour télécharger la ressource
draggalbe TOUS Indique si l'élement peut être déplacé par l'utilisateur
dropable TOUS Indique si l'élement peut receptionner un élément draggable.
dropzone TOUS Indique si l'élement peut receptionner un élément draggable.
enctype <form> Définit le type d'encodage des données du formulaire quand la method est POST
for <label>, <output> Décris l'élement qui lui est associé
form <button>, <fieldset>, <input>, <label>, <object>, <output>, <progress>, <select>, <textarea> Indique le formulaire qui est propriétaire de l'élément
href <a>, <area>, <base>, <link> L'url de la ressource associée
id TOUS Permet d'associer un identifiant à un élément
maxlength <input>, <textarea> Définit le nombre de caractère maximum pour l'élément
method <form> Indique quel méthode HTTP doit être utilisé quand le formulaire est envoyé. Peux être GET (défaut) ou POST.
name TOUS Lors de la soumission d'un formulaire, on récupère les valeurs et les noms des champs.
placeholder <input>, <textarea> Ajoute un texte informatif pour l'utilisateur
readonly <input>, <textarea> Indique si l'élément peut être édité par l'utilisateur
selected <option> Permet de sélectionner une valeur dans un <select>
size <input>, <select> Définit la taille d'un élément par un nombre de caractères
src <audio>, <embed>, <iframe>, <img>, <input>, <script>, <source>, <track>, <video> Indique la source de l'élément. Pour l'image
par exemple on indique où elle se trouve sur le serveur.
style TOUS Définit les styles CSS qui primeront sur les styles précédemment définis.
target <a>,<form> Indique où charger le script: nouvelle page, page nommé ou la même page.
title TOUS Permet d'indiquer à l'utilisateur une information, visible lors du survol de la souris sur celui-ci.
type <button>, <input>, <embed>, <object>, <script>, <style> Indique le type de l'élément.
type <button>, <option>, <input>, <li> Indique la valeur de l'élément.
======================================
Les formats d'images: JPG et PNG
Il existe plusieurs formats sur le web, nous étudirons les plus connus : PNG et JPG.
Pour faire simple PNG est optimisé pour des petits formats comme des logos alors que JPG
sera plus intéressant pour les grosses images comme les photos.
Pour une même qualité d'image un JPG peut être trois fois plus léger qu'un PNG,
alors que pour d'autres types d'images, comme un simple dégradé le PNG sera plus léger ;
de plus le PNG a tendance à mieux respecter la qualité de l'image, les JPG sont souvent pixélisé lorsqu'ils sont trop compressé.
A noter aussi que le PNG gère les transparences.
Insérer l'image du même projet
<img src="/images/html.png" />
****** * **** * **** ** *** *******
Insérer l'image d'un site externe
<img src="http://www.egypte-antique.com/egypte.jpg" />
Ajouter un titre à l'image
Pour afficher un texte au survol de l'image, il suffit d'indiquer le texte souhaiter dans l'attribut title.
Il est également intéressant de remplir l'attribut alt qui permet d'afficher un texte si le navigateur n'arrive pas à charger l'image.
<img
alt="Photo egypte ancienne"
title="Photo Egypte Ancienne"
src="http://www.egypte-antique.com/egypte.jpg" />
<img src="http://www.egypte-antique.com/egypte.jpg" />
===========================================
Les liens hypertexte
La gestion des liens hypertexte se fait avec la balise <a> et l'attribut href. Cette balise est peut être la plus importante du web, sans elle impossible de passer de site en site.
Le lien de base aura cette forme:
<a href="http://www.egypte-antique.com">EGYPTE ANCIENNE</a>
L'exemple ci-dessus affichera :
EGYPTE ANCIENNE
On remarquera que lorsqu'on clique dessus, on quitte le site pour aller sur un autre. Pour éviter de perdre la page en cours on peut donner à la balise <a> l'attribut target qui indiquera la cible de destination.
<a href="xxx" target="_blank">YYY</a>
_blank ouvrira une nouvelle fenêtre du navigateur.
<a href="xxx" target="_top">YYY</a>
_top ouvrira le contenu dans sa totalité sur la page.
<a href="xxx" target="_parent">YYY</a>
_parent affichera le contenu dans le cadre qui enveloppe la structure courante.
<a href="xxx" target="_self">YYY</a>
_self affichera le contenu dans le cadre courant, c'est la valeur par défaut.
Les ancrages
La gestion des encrages se fait avec l'attribut name. Le fait de nommer cette balise la transforme en ancre. Il s'agit d'un point de repère qu'on peut atteindre via l'URL.
L'ancre se présente ainsi:
<a name="nom-de-votre-ancre"></a>
Le pointeur qui permet d'atteindre l'ancre se créer ainsi:
<a href="#nom-de-votre-ancre"></a>
Exemple:
ANCRE
POINTEUR
J'ai rempli la balise <a> par la valeur "ANCRE", j'aurai pu la laisser vide pour rendre l'ancre invisible.
Lorsque l'on clique sur le pointeur, le navigateur scroll jusqu'à l'ancre.
Créer un lien sur une image
Pour créer un lien sur une image, il faut encadré l'image des balises <a>
Exemple:
<a
href="http://www.egypte-antique.com"
target="_blank">
<img
alt="Photo egypte ancienne"
title="Photo Egypte Ancienne"
src="http://www.egypte-antique.com/egypte.jpg" />
</a>
===========================================
Les champs de formulaire en HTML
HTML possède des éléments de fomulaire qui permettent aux utilisateurs d'interagir avec le site. L'exemple le plus connu d'élément input sur le web est le champs de texte de la page google. L'espace où vous faîtes votre recherche est un input.
Le champ texte
Exemple de champ texte:
<input />
Résultat:
Cliquez sur l'élément et vous pourrez entrer du texte.
Par défaut l'input est un champ texte. Mais on peut lui donner d'autre forme comme des boutons radio ou des checkbox que vous rencontrez souvent dans des formulaire d'inscription.
Checkbox
Exemple de checkbox:
<input type="checkbox" /> OUI
<input type="checkbox" /> NON
Résultat:
OUI
NON
Ce qui nous frappe lors de ce test de checkbox c'est qu'on peut cocher les deux valeurs. C'est assez idiot de répondre à une question par oui et par non en même temps.
Il existe donc un input qui permet de choisir qu'une seule réponse possible.
Radio
<input name="question1" type="radio" /> OUI
<input name="question1" type="radio" /> NON
Résultat:
OUI
NON
Case cochée
Par défaut aucun des boutons radio ou checkbox n'est coché. Pour cocher la réponse "oui" par défaut, il faut l'indiquer avec l'attribut checked.
<input checked name="question1" type="radio" /> OUI
<input name="question1" type="radio" /> NON
Résultat:
OUI
NON
Textarea
Il existe un type d'input qui permet d'écrire du texte sur plusieurs lignes
<textarea>Exemple</textarea>
Résultat:
Exemple
Bien qu'il soit conseillé de changer sa taille en CSS, on peut modifier sa taille en lui précisant son nom de colonnes et de lignes.
<textarea cols="30" rows="4">Exemple</textarea>
Résultat:
Exemple
La liste déroulante
Lorsque l'on propose à l'utilisateur de sélectionner une valueur stricte, on lui propose une liste déroulante
<select>
<option>OPTION 1</option>
<option>OPTION 2</option>
</select>
Résultat:
Input à connaître
<input type="text" />
<input type="checkbox" />
<input type="radio" />
<textarea></textarea>
<select></select>
==============================================
Les formulaires HTML
L'utilité d'un formulaire HTML
Le formulaire HTML est un ensemble d'éléments que l'utilisateur soumet au serveur. Ces éléments sont essentiellement les inputs (voir le chapitre précédent). Cela permet une communication entre l'utilisateur et le site web.
La balise <form>
Les formulaires sont encadrés par les balises <form> et possèdent les attributs suivants:
METHOD, indique le type d'envoi des données. Soit en POST ( données envoyées via le corps de la requête ) ou en GET qui envoie les données via l'URL.
ACTION indique la localisation du script. Cela peut être un script CGI ou directement une adresse mail, exemple : mailto:exemple@exemple.com
Exemple:
<form method="POST" action="/page-html-formulaire">
Nom <input type="text" name="nom" />
Prénom <input type="text" name="prenom" />
<input type="submit" value="Valider" />
</form>
Résultat:
Nom
Prénom
Valider
Si vous avez intégré BOOTSTRAP vous pouvez afficher le formulaire ainsi:
<form method="POST" action="/page-html-formulaire">
<input type="text" name="nom" placeholder="Nom" />
<input type="text" name="prenom" placeholder="Prenom" />
<input type="submit" class="btn" value="Valider" />
</form>
Nom
Prenom
Valider
Vous pouvez styliser le formulaire HTML:
<form method="POST" action="/page-html-formulaire">
<fieldset>
<legend>Inscription</legend>
<input type="text" name="nom" placeholder="Nom" />
<br />
<input type="text" name="prenom" placeholder="Prenom" />
<br />
<input type="submit" class="btn btn-primary" value="Valider" />
</fieldset>
</form>
Inscription
Nom
Prénom
Valider
===================================================================
========================
Les balises les plus utilisées sont les suivantes:
Balise Fonction
<!-- --> Commentaire
<a> Lien hypertext
<b> Texte en gras
<body> Corps de la page
<br /> Permet de sauter une ligne
<caption> Titre d'un tableau
<cite> Citation
<div> Division
<em> Emphase ( italique )
<fieldset> Permet de regrouper des éléments d'un formulaire
<form> Formulaire
<frame> Frame
<h1> Titre d'importance 1
<h2> Titre d'importance 2
<h3> Titre d'importance 3
<h4> Titre d'importance 4
<h5> Titre d'importance 5
<h6> Titre d'importance 6
<head> Entête d'un fichier
<hr> Séparateur horizontal
<html> Balise obligatoire pour déclarer le debut du code html
<i> Italique
<img /> Image
<input /> Elément du formulaire
<label> Description d'un champ
<li> Composant d'une liste ( ul ou ol )
<legend> Légende d'un tableau
<meta> Information sur la page
<noscript> Le texte indiqué sera affiché dans le cas
où le navigateur n'accepte pas les scripts
<object> Element multimédia
<ol> Liste numéroté, associé à la balise li
<option> Entrée de la base select
<pre> Respecte le contenu HTML pour les espaces.
<script> Insertion de script
<span> Division comme la balise div l'affichage est différent
<strong> Texte en gras
<style> Insertion de style ( CSS )
<sub> Texte en indice
<sup> Texte en exposant
<table> Tableau
<td> Cellule de tableau
<textarea> Champ composé de plusieurs lignes
<th> Cellule d'entête d'un tableau
<title> Titre de la page
<tr> Nouvelle ligne d'un tableau
<ul> Liste non numéroté
=============================================
Dans l'exemple ci-dessus, l'attribut "name" de la base "meta" a pour valeur "description".
Cela permet de dire au navigateur que la balise meta - qui est une balise d'information -
nous informe de la description du site. Pour cette balise la valeur se met dans l'attribut "content".
Liste attributs HTML
Attribut Elément Description
accept <form>, <input> Les type de fichier accepté par le serveur
accept-charset <form> Type d'encodage supporté
accesskey TOUS Définit un raccoucrci clavier pour activer ou sélectionner un élément
action <form> L'URL du script qui traitera les valeurs du formulaire
align <caption>, <hr>, <iframe>, <img>, <table>, <td>, <th> Définit l'alignement horizontal de l'élément. Exemple: left, right, center et justify.
alt <area>, <img>, <input> Texte alternatif lorsque l'élément ne peut être affiché.
async <script> Exécute le script en asynchrone
autocomplete <input>, <select>, <textarea> Propriété qui permet d'afficher ou non des propositions de complétion de texte à l'utilisateur
autofocus <input>, <select>, <textarea> L'élement est sélectionné au chargement de la page
autoplay <audio>, <video> Chargement automatique de l'élement multimédia.
charset <meta>, <script> Définit le type de codage de l'élement
checked <input> Indique si l'élément est coché
class TOUS Permet d'associer une classe à un élément
cols <textarea> Indique le nombre de colonne de l'élément
colspan <td>, <th> Permet de fusionner x cellule d'un tableau horizontalement
data-* TOUS Permet de créer ses propres attributs. Exemple data-user="1"
dir TOUS Indique le sens de lecture. Exemple ltr pour (left to right) et rtl ( right to left )
disabled TOUS Permet de bloquer l'édition de l'élément et rend l'élement illisible pour la validation du formulaire.
download <a>, <area> Indique que l'hyperlien doit être utilisé pour télécharger la ressource
draggalbe TOUS Indique si l'élement peut être déplacé par l'utilisateur
dropable TOUS Indique si l'élement peut receptionner un élément draggable.
dropzone TOUS Indique si l'élement peut receptionner un élément draggable.
enctype <form> Définit le type d'encodage des données du formulaire quand la method est POST
for <label>, <output> Décris l'élement qui lui est associé
form <button>, <fieldset>, <input>, <label>, <object>, <output>, <progress>, <select>, <textarea> Indique le formulaire qui est propriétaire de l'élément
href <a>, <area>, <base>, <link> L'url de la ressource associée
id TOUS Permet d'associer un identifiant à un élément
maxlength <input>, <textarea> Définit le nombre de caractère maximum pour l'élément
method <form> Indique quel méthode HTTP doit être utilisé quand le formulaire est envoyé. Peux être GET (défaut) ou POST.
name TOUS Lors de la soumission d'un formulaire, on récupère les valeurs et les noms des champs.
placeholder <input>, <textarea> Ajoute un texte informatif pour l'utilisateur
readonly <input>, <textarea> Indique si l'élément peut être édité par l'utilisateur
selected <option> Permet de sélectionner une valeur dans un <select>
size <input>, <select> Définit la taille d'un élément par un nombre de caractères
src <audio>, <embed>, <iframe>, <img>, <input>, <script>, <source>, <track>, <video> Indique la source de l'élément. Pour l'image
par exemple on indique où elle se trouve sur le serveur.
style TOUS Définit les styles CSS qui primeront sur les styles précédemment définis.
target <a>,<form> Indique où charger le script: nouvelle page, page nommé ou la même page.
title TOUS Permet d'indiquer à l'utilisateur une information, visible lors du survol de la souris sur celui-ci.
type <button>, <input>, <embed>, <object>, <script>, <style> Indique le type de l'élément.
type <button>, <option>, <input>, <li> Indique la valeur de l'élément.
======================================
Les formats d'images: JPG et PNG
Il existe plusieurs formats sur le web, nous étudirons les plus connus : PNG et JPG.
Pour faire simple PNG est optimisé pour des petits formats comme des logos alors que JPG
sera plus intéressant pour les grosses images comme les photos.
Pour une même qualité d'image un JPG peut être trois fois plus léger qu'un PNG,
alors que pour d'autres types d'images, comme un simple dégradé le PNG sera plus léger ;
de plus le PNG a tendance à mieux respecter la qualité de l'image, les JPG sont souvent pixélisé lorsqu'ils sont trop compressé.
A noter aussi que le PNG gère les transparences.
Insérer l'image du même projet
<img src="/images/html.png" />
****** * **** * **** ** *** *******
Insérer l'image d'un site externe
<img src="http://www.egypte-antique.com/egypte.jpg" />
Ajouter un titre à l'image
Pour afficher un texte au survol de l'image, il suffit d'indiquer le texte souhaiter dans l'attribut title.
Il est également intéressant de remplir l'attribut alt qui permet d'afficher un texte si le navigateur n'arrive pas à charger l'image.
<img
alt="Photo egypte ancienne"
title="Photo Egypte Ancienne"
src="http://www.egypte-antique.com/egypte.jpg" />
<img src="http://www.egypte-antique.com/egypte.jpg" />
===========================================
Les liens hypertexte
La gestion des liens hypertexte se fait avec la balise <a> et l'attribut href. Cette balise est peut être la plus importante du web, sans elle impossible de passer de site en site.
Le lien de base aura cette forme:
<a href="http://www.egypte-antique.com">EGYPTE ANCIENNE</a>
L'exemple ci-dessus affichera :
EGYPTE ANCIENNE
On remarquera que lorsqu'on clique dessus, on quitte le site pour aller sur un autre. Pour éviter de perdre la page en cours on peut donner à la balise <a> l'attribut target qui indiquera la cible de destination.
<a href="xxx" target="_blank">YYY</a>
_blank ouvrira une nouvelle fenêtre du navigateur.
<a href="xxx" target="_top">YYY</a>
_top ouvrira le contenu dans sa totalité sur la page.
<a href="xxx" target="_parent">YYY</a>
_parent affichera le contenu dans le cadre qui enveloppe la structure courante.
<a href="xxx" target="_self">YYY</a>
_self affichera le contenu dans le cadre courant, c'est la valeur par défaut.
Les ancrages
La gestion des encrages se fait avec l'attribut name. Le fait de nommer cette balise la transforme en ancre. Il s'agit d'un point de repère qu'on peut atteindre via l'URL.
L'ancre se présente ainsi:
<a name="nom-de-votre-ancre"></a>
Le pointeur qui permet d'atteindre l'ancre se créer ainsi:
<a href="#nom-de-votre-ancre"></a>
Exemple:
ANCRE
POINTEUR
J'ai rempli la balise <a> par la valeur "ANCRE", j'aurai pu la laisser vide pour rendre l'ancre invisible.
Lorsque l'on clique sur le pointeur, le navigateur scroll jusqu'à l'ancre.
Créer un lien sur une image
Pour créer un lien sur une image, il faut encadré l'image des balises <a>
Exemple:
<a
href="http://www.egypte-antique.com"
target="_blank">
<img
alt="Photo egypte ancienne"
title="Photo Egypte Ancienne"
src="http://www.egypte-antique.com/egypte.jpg" />
</a>
===========================================
Les champs de formulaire en HTML
HTML possède des éléments de fomulaire qui permettent aux utilisateurs d'interagir avec le site. L'exemple le plus connu d'élément input sur le web est le champs de texte de la page google. L'espace où vous faîtes votre recherche est un input.
Le champ texte
Exemple de champ texte:
<input />
Résultat:
Cliquez sur l'élément et vous pourrez entrer du texte.
Par défaut l'input est un champ texte. Mais on peut lui donner d'autre forme comme des boutons radio ou des checkbox que vous rencontrez souvent dans des formulaire d'inscription.
Checkbox
Exemple de checkbox:
<input type="checkbox" /> OUI
<input type="checkbox" /> NON
Résultat:
OUI
NON
Ce qui nous frappe lors de ce test de checkbox c'est qu'on peut cocher les deux valeurs. C'est assez idiot de répondre à une question par oui et par non en même temps.
Il existe donc un input qui permet de choisir qu'une seule réponse possible.
Radio
<input name="question1" type="radio" /> OUI
<input name="question1" type="radio" /> NON
Résultat:
OUI
NON
Case cochée
Par défaut aucun des boutons radio ou checkbox n'est coché. Pour cocher la réponse "oui" par défaut, il faut l'indiquer avec l'attribut checked.
<input checked name="question1" type="radio" /> OUI
<input name="question1" type="radio" /> NON
Résultat:
OUI
NON
Textarea
Il existe un type d'input qui permet d'écrire du texte sur plusieurs lignes
<textarea>Exemple</textarea>
Résultat:
Exemple
Bien qu'il soit conseillé de changer sa taille en CSS, on peut modifier sa taille en lui précisant son nom de colonnes et de lignes.
<textarea cols="30" rows="4">Exemple</textarea>
Résultat:
Exemple
La liste déroulante
Lorsque l'on propose à l'utilisateur de sélectionner une valueur stricte, on lui propose une liste déroulante
<select>
<option>OPTION 1</option>
<option>OPTION 2</option>
</select>
Résultat:
Input à connaître
<input type="text" />
<input type="checkbox" />
<input type="radio" />
<textarea></textarea>
<select></select>
==============================================
Les formulaires HTML
L'utilité d'un formulaire HTML
Le formulaire HTML est un ensemble d'éléments que l'utilisateur soumet au serveur. Ces éléments sont essentiellement les inputs (voir le chapitre précédent). Cela permet une communication entre l'utilisateur et le site web.
La balise <form>
Les formulaires sont encadrés par les balises <form> et possèdent les attributs suivants:
METHOD, indique le type d'envoi des données. Soit en POST ( données envoyées via le corps de la requête ) ou en GET qui envoie les données via l'URL.
ACTION indique la localisation du script. Cela peut être un script CGI ou directement une adresse mail, exemple : mailto:exemple@exemple.com
Exemple:
<form method="POST" action="/page-html-formulaire">
Nom <input type="text" name="nom" />
Prénom <input type="text" name="prenom" />
<input type="submit" value="Valider" />
</form>
Résultat:
Nom
Prénom
Valider
Si vous avez intégré BOOTSTRAP vous pouvez afficher le formulaire ainsi:
<form method="POST" action="/page-html-formulaire">
<input type="text" name="nom" placeholder="Nom" />
<input type="text" name="prenom" placeholder="Prenom" />
<input type="submit" class="btn" value="Valider" />
</form>
Nom
Prenom
Valider
Vous pouvez styliser le formulaire HTML:
<form method="POST" action="/page-html-formulaire">
<fieldset>
<legend>Inscription</legend>
<input type="text" name="nom" placeholder="Nom" />
<br />
<input type="text" name="prenom" placeholder="Prenom" />
<br />
<input type="submit" class="btn btn-primary" value="Valider" />
</fieldset>
</form>
Inscription
Nom
Prénom
Valider
===================================================================
Aucun commentaire:
Enregistrer un commentaire