Solution HTML 5 super simple:
<input type="search" placeholder="Search..." />
Source: Tutoriel HTML 5 - Type d'entrée: Recherche
Cela fonctionne au moins dans Chrome 8, Edge 14, IE 10 et Safari 5 et ne nécessite pas Bootstrap ou toute autre bibliothèque. (Malheureusement, il semble que Firefox ne prenne pas encore en charge le bouton d'effacement de la recherche.)
Après avoir tapé dans la zone de recherche, un «x» apparaîtra sur lequel vous pouvez cliquer pour effacer le texte. Cela fonctionnera toujours comme une boîte d'édition ordinaire (sans le bouton `` x '') dans d'autres navigateurs, tels que Firefox, afin que les utilisateurs de Firefox puissent à la place sélectionner le texte et appuyer sur Supprimer, ou ...
Si vous avez vraiment besoin de cette fonctionnalité intéressante prise en charge dans Firefox, vous pouvez implémenter l'une des autres solutions publiées ici en tant que polyfill pour les éléments input [type = search]. Un polyfill est un code qui ajoute automatiquement une fonctionnalité de navigateur standard lorsque le navigateur de l'utilisateur ne prend pas en charge la fonctionnalité. Au fil du temps, nous espérons pouvoir supprimer les polyfills au fur et à mesure que les navigateurs implémentent les fonctionnalités respectives. Et dans tous les cas, une implémentation polyfill peut aider à garder le code HTML plus propre.
À propos, d'autres types d'entrées HTML 5 (tels que «date», «nombre», «e-mail», etc.) se dégraderont également en une simple zone d'édition. Certains navigateurs peuvent vous proposer un sélecteur de date sophistiqué, une commande à molette avec boutons haut / bas ou (sur les téléphones mobiles) un clavier spécial qui comprend le signe «@» et un bouton «.com», mais à ma connaissance, tous les navigateurs affichera au moins une zone de texte brut pour tout type d'entrée non reconnu.
Solution Bootstrap 3 et HTML 5
Bootstrap 3 réinitialise beaucoup de CSS et casse le bouton d'annulation de recherche HTML 5. Une fois le CSS Bootstrap 3 chargé, vous pouvez restaurer le bouton d'annulation de recherche avec le CSS utilisé dans l'exemple suivant:
<link href="https://maxcdn.bootstrapcdn.com/bootstrap/3.3.7/css/bootstrap.min.css" rel="stylesheet"/>
<style>
input[type="search"]::-webkit-search-cancel-button {
-webkit-appearance: searchfield-cancel-button;
}
</style>
<div class="form-inline">
<input type="search" placeholder="Search..." class="form-control" />
</div>
Source: l' entrée de recherche HTML 5 ne fonctionne pas avec Bootstrap
J'ai testé que cette solution fonctionne dans les dernières versions de Chrome, Edge et Internet Explorer. Je ne peux pas tester dans Safari. Malheureusement, le bouton 'x' pour effacer la recherche n'apparaît pas dans Firefox, mais comme ci-dessus, un polyfill pourrait être implémenté pour les navigateurs qui ne supportent pas cette fonctionnalité de manière native (par exemple Firefox).