Solução HTML 5 super simples:
<input type="search" placeholder="Search..." />
Fonte: Tutorial HTML 5 - Tipo de entrada: Pesquisa
Isso funciona pelo menos no Chrome 8, Edge 14, IE 10 e Safari 5 e não requer Bootstrap ou qualquer outra biblioteca. (Infelizmente, parece que o Firefox ainda não oferece suporte ao botão de limpar a pesquisa.)
Depois de digitar na caixa de pesquisa, um 'x' aparecerá, que pode ser clicado para limpar o texto. Isso ainda funcionará como uma caixa de edição comum (sem o botão 'x') em outros navegadores, como o Firefox, portanto, os usuários do Firefox podem selecionar o texto e pressionar excluir ou ...
Se você realmente precisa que este recurso bom de ter suporte no Firefox, então você pode implementar uma das outras soluções postadas aqui como um polyfill para elementos de entrada [type = search]. Um polyfill é um código que adiciona automaticamente um recurso padrão do navegador quando o navegador do usuário não oferece suporte ao recurso. Com o tempo, a esperança é que você consiga remover polyfills à medida que os navegadores implementam os respectivos recursos. E, em qualquer caso, uma implementação de polyfill pode ajudar a manter o código HTML mais limpo.
A propósito, outros tipos de entrada HTML 5 (como "data", "número", "e-mail", etc.) também degradam normalmente para uma caixa de edição simples. Alguns navegadores podem fornecer um seletor de data sofisticado, um controle giratório com botões para cima / para baixo ou (em telefones celulares) um teclado especial que inclui o sinal '@' e um botão '.com', mas que eu saiba, todos os navegadores mostrará pelo menos uma caixa de texto simples para qualquer tipo de entrada não reconhecido.
Solução Bootstrap 3 e HTML 5
O Bootstrap 3 redefine muitos CSS e quebra o botão de cancelar pesquisa do HTML 5. Depois que o CSS do Bootstrap 3 for carregado, você pode restaurar o botão de cancelamento da pesquisa com o CSS usado no exemplo a seguir:
<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>
Fonte: HTML 5 A entrada de pesquisa não funciona com bootstrap
Testei se essa solução funciona nas versões mais recentes do Chrome, Edge e Internet Explorer. Não consigo testar no Safari. Infelizmente, o botão 'x' para limpar a pesquisa não aparece no Firefox, mas como acima, um polyfill pode ser implementado para navegadores que não suportam esse recurso nativamente (por exemplo, Firefox).