📘 Chapitre 3 – Inputs, labels et groupes de champs
1. 🎯 Objectif pédagogique
Être capable de créer des formulaires HTML en utilisant des champs de saisie (input
, textarea
, select
) correctement associés à des label
, et regrouper ces champs pour une meilleure lisibilité et accessibilité.
2. 📚 Concepts abordés
- Balise
<form>
et attributs (action
,method
) - Balises
<label>
et association avecfor
/id
- Types d’
<input>
: texte, e-mail, mot de passe, bouton radio, case à cocher - Champs multi-lignes :
<textarea>
- Listes déroulantes :
<select>
et<option>
- Groupes de champs :
<fieldset>
et<legend>
3. 🧠 Explication théorique
Un formulaire HTML permet de recueillir des informations auprès de l’utilisateur. La balise <form>
encapsule tous les champs et contient deux attributs essentiels :
action
: l’URL vers laquelle envoyer les données,method
:GET
ouPOST
.
Pour l’accessibilité, chaque champ doit être associé à une balise <label>
:
<label for="nom">Nom</label>
<input type="text" id="nom" name="nom">
Les groupes de champs peuvent être structurés avec <fieldset>
et <legend>
:
<fieldset>
<legend>Informations personnelles</legend>
<label for="email">E-mail</label>
<input type="email" id="email" name="email">
</fieldset>
4. 🛠 Tutoriel pratique
Résumé du travail : Créer un formulaire simple (nom, e-mail, genre) avec des labels correctement associés et un bouton d’envoi.
Arborescence du projet :
mon_projet/
└── index.html
Étape 1 : Créer la structure de formulaire
Dans <body>
, insérez :
<form action="#" method="post">
<fieldset>
<legend>Contact</legend>
</fieldset>
</form>
Étape 2 : Ajouter des champs avec labels
<label for="nom">Nom :</label>
<input type="text" id="nom" name="nom" placeholder="Votre nom">
<label for="email">E-mail :</label>
<input type="email" id="email" name="email" placeholder="exemple@mail.com">
Étape 3 : Ajouter des boutons radio et un bouton d’envoi
<p>Genre :</p>
<label>
<input type="radio" name="genre" value="homme"> Homme
</label>
<label>
<input type="radio" name="genre" value="femme"> Femme
</label>
<button type="submit">Envoyer</button>
5. 🧾 Résumé et points-clés
- Chaque champ doit être relié à un label pour l’accessibilité.
- Les
input
utilisent des types variés (text
,email
,radio
, etc.). <fieldset>
et<legend>
améliorent la structure et la lisibilité.