Para oferecer a melhor experiência possível ao usuário, use o elemento e o
elemento type mais adequados aos dados que o usuário está inserindo.
Ajudar os usuários a preencher textos
Use o elemento <input> para fornecer um campo de formulário. Um <input> é a melhor opção para palavras, frases e entradas curtas. Para textos mais longos, use o elemento
<textarea>. Isso permite várias linhas de texto e facilita
para o usuário ver o texto inserido, já que o elemento pode ser rolado e
redimensionado.
Verifique se os usuários inserem os dados no formato correto
Você quer ajudar os usuários a preencher um número de telefone?
Mude o atributo type para type="tel" no <input>.
Os usuários em dispositivos móveis recebem um teclado na tela adaptado,
garantindo que eles possam inserir o número de telefone mais rapidamente.
Para um endereço de e-mail, use type="email".
De novo, um teclado na tela adaptado é mostrado.
Use o atributo required para tornar o campo obrigatório.
Quando o formulário é enviado, o navegador verifica se a entrada tem um valor e se ele é válido. Nesse caso, se é um endereço de e-mail bem formatado.
Saiba mais sobre os diferentes tipos de entrada. Eles também oferecem recursos de validação integrados.
Ajudar os usuários a preencher datas
Quando você quer começar sua próxima viagem?
Para ajudar os usuários a preencher datas, use type="date".
Alguns navegadores mostram o formato como um marcador de posição, como yyyy-mm-dd, demonstrando como inserir a data.
Todos os navegadores modernos oferecem interfaces personalizadas para selecionar datas na forma de um seletor de datas.
Ajudar os usuários a selecionar uma opção
Para garantir que os usuários possam selecionar ou desmarcar uma opção possível, use type="checkbox".
Você quer oferecer várias opções?
Dependendo do seu caso de uso, há várias alternativas.
Primeiro, confira possíveis soluções se os usuários só puderem escolher uma opção.
É possível usar vários elementos <input> com type="radio" e o mesmo valor name. Os usuários veem todas as opções de uma vez, mas só podem escolher uma.
Outra opção é usar o elemento <select>.
Os usuários podem rolar uma lista de opções disponíveis e escolher uma delas.
Para alguns casos de uso, como escolher um intervalo de números, <input> do tipo range pode ser uma boa opção.
Você precisa oferecer a capacidade de selecionar várias opções?
Use um elemento <select> com o atributo multiple ou vários elementos <input> do tipo checkbox.
Você também pode usar um <input> em combinação com o elemento <datalist>.
Isso oferece uma combinação de um campo de texto e uma lista de elementos <option>.
Garantir que os usuários possam preencher diferentes tipos de dados
Há mais tipos de entrada para casos de uso específicos.
Há um <input> do tipo color para oferecer aos usuários um seletor de cores em navegadores compatíveis, além de vários outros tipos. Para garantir que os usuários
possam inserir a senha, use <input> com type="password". Cada caractere
inserido é ocultado por um asterisco ("*") ou um ponto ("•"), para garantir que a senha
não possa ser lida.
Você quer incluir um token de segurança exclusivo nos dados do formulário?
Use <input> com type="hidden".
O valor de um <input> do tipo hidden não pode ser visto nem modificado pelos usuários.
Para permitir que os usuários façam upload e enviem arquivos, use <input> com type="file".
Também é possível definir elementos personalizados se você tiver um caso de uso especial em que nenhum elemento ou tipo integrado seja adequado.
Ajudar os usuários a preencher seu formulário
Existem muitos elementos e tipos de formulário, mas qual deles você deve escolher?
Em alguns casos de uso, é fácil escolher o elemento e o tipo apropriados, como <input type="date">. Para outras, depende.
Por exemplo, é possível usar vários elementos <input> com type="checkbox" ou um elemento <select>.
Saiba mais sobre como escolher entre caixas de listagem e listas suspensas.
Em geral, teste seu formulário com usuários reais para encontrar o melhor elemento e tipo de formulário.
Teste seu conhecimento
Teste seus conhecimentos sobre campos de formulário
É possível fazer upload de vários arquivos com um controle de formulário?
<input type="files">.<input type="file" multiple>.<input type="multiple-files">.Qual é a diferença entre type="text" e type="password"?
type="password".type="password", cada caractere inserido é ocultado por um asterisco (*) ou um ponto (•).type="password".