<datalist>
Fournit une liste de valeurs prédéfinies suggérées pour un champ input, sous forme d'autocomplétion native.
Description
L’élément <datalist> contient un ensemble d’éléments <option> représentant des suggestions pour un <input>. L’input est lié au datalist via list (sur l’input) et id (sur le datalist). L’utilisateur peut saisir n’importe quelle valeur ou choisir parmi les suggestions — contrairement à <select>, la saisie libre est toujours possible.
Syntaxe
<input type="text" id="ville" list="villes">
<datalist id="villes">
<option value="Paris">
<option value="Lyon">
<option value="Marseille">
</datalist>
Exemples
Autocomplétion de frameworks :
<label for="framework">Framework CSS :</label>
<input type="text" id="framework" name="framework" list="frameworks">
<datalist id="frameworks">
<option value="Tailwind CSS">
<option value="Bootstrap">
<option value="Bulma">
<option value="Foundation">
</datalist>
Avec descriptions (certains navigateurs les affichent) :
<input type="text" id="couleur" list="couleurs">
<datalist id="couleurs">
<option value="#ff0000">Rouge</option>
<option value="#00ff00">Vert</option>
<option value="#0000ff">Bleu</option>
</datalist>
Notes
Saisie libre autorisée : <datalist> est différent de <select> : l’utilisateur n’est pas contraint aux options proposées. Si une saisie stricte est nécessaire, utiliser <select>.
Support navigateurs : bien supporté par tous les navigateurs modernes. Le rendu des suggestions varie selon les navigateurs (popover natif, pas de style possible).
Support navigateurs
Chrome20+ · Firefox4+ · Safari12.1+ · Edge12+