Types d'Attributs HTML
1. Attributs Globaux
Ces attributs peuvent être utilisés avec n'importe quelle balise HTML :
<!-- id : Identifiant unique -->
<div id="conteneur-principal">Contenu unique</div>
<!-- class : Classes CSS pour le style -->
<p class="texte-important texte-grand">Paragraphe avec plusieurs classes</p>
<!-- style : Styles CSS en ligne -->
<span style="color: red; font-weight: bold;">Texte rouge et gras</span>
<!-- title : Information supplémentaire (tooltip) -->
<abbr title="HyperText Markup Language">HTML</abbr>
<!-- lang : Langue du contenu -->
<p lang="fr">Ce paragraphe est en français</p>
<p lang="en">This paragraph is in English</p>
<!-- data-* : Attributs de données personnalisés -->
<div data-user-id="12345" data-role="administrateur">Utilisateur</div>
<!-- hidden : Masquer l'élément -->
<div hidden>Ce contenu est masqué</div>
<!-- tabindex : Ordre de navigation au clavier -->
<button tabindex="1">Premier bouton</button>
<button tabindex="2">Deuxième bouton</button>
2. Attributs Spécifiques aux Balises
Attributs des Liens (<a>)
<!-- href : Destination du lien -->
<a href="https://www.exemple.com">Lien externe</a>
<a href="#section1">Lien interne</a>
<a href="mailto:contact@exemple.com">Envoyer un email</a>
<a href="tel:+33123456789">Appeler</a>
<!-- target : Comment ouvrir le lien -->
<a href="https://www.exemple.com" target="_blank">Ouvrir dans un nouvel onglet</a>
<a href="document.pdf" target="_self">Ouvrir dans le même onglet</a>
<!-- rel : Relation avec la destination -->
<a href="https://www.exemple.com" rel="noopener noreferrer">Lien sécurisé</a>
<a href="https://www.exemple.com" rel="sponsored">Lien sponsorisé</a>
<!-- download : Télécharger le fichier -->
<a href="document.pdf" download="mon-document.pdf">Télécharger PDF</a>
Attributs des Images (<img>)
<!-- src : Source de l'image (obligatoire) -->
<img src="image.jpg" alt="Description de l'image">
<!-- alt : Texte alternatif (obligatoire pour l'accessibilité) -->
<img src="logo.png" alt="Logo de l'entreprise">
<!-- width et height : Dimensions -->
<img src="photo.jpg" alt="Photo" width="400" height="300">
<!-- loading : Chargement différé -->
<img src="grande-image.jpg" alt="Image" loading="lazy">
<!-- srcset : Images responsives -->
<img src="petite-image.jpg"
srcset="petite-image.jpg 400w, moyenne-image.jpg 800w, grande-image.jpg 1200w"
sizes="(max-width: 400px) 400px, (max-width: 800px) 800px, 1200px"
alt="Image responsive">
<!-- Champs de saisie -->
<input type="text" name="nom" placeholder="Votre nom" required maxlength="50">
<input type="email" name="email" placeholder="votre@email.com" required>
<input type="password" name="password" minlength="8" required>
<input type="number" name="age" min="18" max="100" step="1">
<input type="date" name="date" min="2025-01-01" max="2025-12-31">
<!-- Zone de texte -->
<textarea name="message" rows="5" cols="40" placeholder="Votre message ici" required></textarea>
<!-- Sélection -->
<select name="pays" required>
<option value="">Sélectionnez un pays</option>
<option value="fr">France</option>
<option value="be">Belgique</option>
<option value="ch">Suisse</option>
</select>
<!-- Cases à cocher -->
<input type="checkbox" id="conditions" name="conditions" required>
<label for="conditions">J'accepte les conditions générales</label>
<!-- Boutons radio -->
<input type="radio" id="masculin" name="genre" value="masculin">
<label for="masculin">Masculin</label>
<input type="radio" id="feminin" name="genre" value="feminin">
<label for="feminin">Féminin</label>
Attributs des Tableaux
<table border="1" cellpadding="10" cellspacing="0">
<thead>
<tr>
<th colspan="2">Informations Personnelles</th>
<th rowspan="2">Actions</th>
</tr>
<tr>
<th>Nom</th>
<th>Email</th>
</tr>
</thead>
<tbody>
<tr>
<td>Jean Dupont</td>
<td>jean@email.com</td>
<td rowspan="2">
<button>Modifier</button>
<button>Supprimer</button>
</td>
</tr>
<tr>
<td>Marie Martin</td>
<td>marie@email.com</td>
</tr>
</tbody>
</table>
3. Attributs Booléens
Certains attributs sont booléens (vrai/faux) et leur présence indique "vrai" :
<!-- Attributs booléens courants -->
<input type="text" required disabled readonly>
<input type="checkbox" checked>
<select multiple>
<option>Option 1</option>
<option selected>Option 2</option>
<option>Option 3</option>
</select>
<video controls autoplay muted loop>
<source src="video.mp4" type="video/mp4">
</video>
<details open>
<summary>Cliquez pour développer</summary>
<p>Contenu masqué qui s'affiche lors du développement.</p>
</details>