HTML5 Mestre dos Mestres • Aula Suprema 25

Textarea e Select

Textarea coleta profundidade textual. Select coleta escolhas controladas. O Mestre usa ambos para garantir voz ao usuário e precisão ao sistema.

NARRAÇÃO MESTRE

Narrador Mestre

Ouça a aula, revise blocos e estude com foco.

Pronto para narrar. As vozes disponíveis dependem do navegador e do sistema.

Abertura de impacto

Liberdade e controle no mesmo formulário

Formulários profissionais precisam de dois poderes: permitir que o usuário explique algo com profundidade e impedir que ele envie dados fora do padrão quando a escolha precisa ser controlada.

Promessa da aula:

Você vai dominar textarea, rows, cols, maxlength, select, option, value, selected, disabled, multiple e optgroup.

Texto longo

Textarea explicado em profundidade

O textarea é usado para textos longos, mensagens, comentários, feedbacks, biografias, observações e qualquer conteúdo que precise de múltiplas linhas.

<label for="mensagem">Mensagem principal</label>
<textarea id="mensagem"
          name="mensagem"
          rows="6"
          cols="50"
          maxlength="1000"
          placeholder="Descreva sua solicitação com detalhes..."
          required></textarea>
  • input text: linha única, dado curto e objetivo.
  • textarea: múltiplas linhas, texto narrativo e detalhado.
  • rows: altura inicial em linhas visíveis.
  • cols: largura aproximada em caracteres.
  • maxlength: limite máximo de caracteres.
Erro fatal:

Textarea sem name aparece na tela, mas o texto não chega ao servidor.

Escolhas controladas

Select, option, value, selected e disabled

O select cria uma lista de escolhas fechadas. Cada option representa uma possibilidade. O texto visível é para humanos; o value é para o sistema.

<label for="estado">Estado</label>
<select id="estado" name="estado" required>
  <option value="" disabled selected>Selecione uma opção</option>
  <option value="sp">São Paulo</option>
  <option value="rj">Rio de Janeiro</option>
  <option value="mg">Minas Gerais</option>
</select>
  • name no select: chave enviada ao servidor.
  • value na option: valor técnico enviado.
  • selected: opção marcada ao carregar.
  • disabled: opção visível, mas não selecionável.
Erro comum:

Deixar o primeiro item real selecionado por padrão. Use uma option neutra como “Selecione uma opção”.

Seleções complexas

Multiple e optgroup

O atributo multiple permite selecionar mais de uma opção. A tag optgroup organiza listas longas em categorias.

<label for="tecnologias">Tecnologias dominadas</label>
<select id="tecnologias" name="tecnologias[]" multiple>
  <option value="html">HTML5</option>
  <option value="css">CSS3</option>
  <option value="js">JavaScript</option>
</select>

<label for="curso">Curso de interesse</label>
<select id="curso" name="curso">
  <option value="">Selecione um curso</option>
  <optgroup label="Desenvolvimento">
    <option value="front-end">Front-End Mestre</option>
    <option value="back-end">Back-End Pro</option>
  </optgroup>
  <optgroup label="Design">
    <option value="ux">UX Research</option>
    <option value="ui">UI Design</option>
  </optgroup>
</select>
  • select: escolha única entre muitas opções.
  • radio: escolha única entre poucas opções visíveis.
  • checkbox: escolhas múltiplas independentes.
  • select multiple: múltiplas escolhas em lista compacta.
Boas práticas

Textarea e select sem amadorismo

  • Use textarea para textos longos e narrativos.
  • Use input text para dados curtos de linha única.
  • Use select quando as opções forem finitas e conhecidas.
  • Conecte todo label ao campo usando for e id.
  • Use name em todo textarea e select.
  • Use option inicial neutra para evitar envio acidental.
  • Use value padronizado nas options.
  • Use optgroup para listas longas categorizadas.
  • Use instrução clara em select multiple.
  • Indique campos obrigatórios e use required quando necessário.
Desafio Mestre

Formulário de Contato e Preferências HTML

Missão: criar o arquivo formulario-contato-preferencias.html com coleta de textos longos, escolhas controladas e dados padronizados.

Contato
Preferências
Segure Ctrl para selecionar várias opções.

Requisitos obrigatórios

  • Doctype HTML5 e html lang="pt-BR".
  • Head completo com charset, viewport, title e meta description.
  • Body com header, main e footer.
  • H1 com “Formulário de Contato e Preferências HTML”.
  • Formulário com form, action e method.
  • Labels conectadas corretamente aos campos.
  • Uso correto de id e name.
  • Pelo menos 2 textareas.
  • Pelo menos 3 selects.
  • Um select simples com option inicial neutra.
  • Um select com selected ou disabled.
  • Um select com optgroup.
  • Um select multiple com instrução clara.
  • Explicação de textarea vs input text e select vs radio vs checkbox.
  • Lista com pelo menos 8 boas práticas.
Quiz com gabarito

15 perguntas para provar domínio

  1. Qual tag permite múltiplas linhas? <textarea>.
  2. Como definir altura inicial? rows.
  3. Qual tag cria lista suspensa? <select>.
  4. Qual tag define item da lista? <option>.
  5. Para que serve selected? Define opção padrão.
  6. Onde fica name no select? Na tag select.
  7. Textarea tem fechamento? Sim.
  8. Como impedir escolha de option? disabled.
  9. Como permitir várias escolhas? multiple.
  10. Como agrupar opções? optgroup.
  11. Qual atributo limita texto? maxlength.
  12. Texto entre option é o quê? Texto visível.
  13. Value na option é o quê? Dado enviado.
  14. Textarea pode redimensionar? Sim, por padrão.
  15. Como conectar label ao select? for no label e id no select.
GitHub

Registre seu formulário com textarea e select

git status
git add .
git commit -m "aula-25: cria formulario com textarea e select"
git push
  • git status: verifica as alterações.
  • git add .: prepara o arquivo.
  • git commit: documenta o domínio da aula.
  • git push: envia para o portfólio global.
Resumo Mestre

Textarea é profundidade. Select é precisão.

O textarea dá voz ao usuário. O select padroniza escolhas. O Mestre usa ambos para criar formulários acessíveis, organizados e úteis para sistemas reais.

Nota final: 10/10 Supremo.

Esta aula está no nível Mestre dos Mestres porque une liberdade textual com rigor de seleção, preparando formulários para suporte, cadastro, filtros, feedback e sistemas corporativos.