Bootstrap 5 - Melhorando a Aparência de Formulários
Melhorando a Aparência de Formulários com Bootstrap 5 e Bootstrap Icons
O Bootstrap 5 oferece #ferramentas poderosas para criar formulários modernos, responsivos e visualmente atraentes, enquanto o Bootstrap Icons adiciona ícones #elegantes para melhorar a experiência do usuário. Este tutorial mostra como usar essas ferramentas para agilizar o desenvolvimento de formulários e criar designs modernos.

Como o Bootstrap 5 Melhora Formulários
-
Estilização consistente: Classes utilitárias como form-control, form-label e btn garantem um visual uniforme e profissional.
-
Responsividade: Layouts de formulários se adaptam automaticamente a diferentes tamanhos de tela.
-
Validação visual: Estilos integrados para validação (ex.: is-valid, is-invalid) facilitam feedback ao usuário.
-
Personalização fácil: Combine com #classes utilitárias (ex.: mb-3, text-primary) para ajustes rápidos.
-
Acessibilidade: Componentes são otimizados para leitores de tela com atributos ARIA.
Passo 1: Configurando Bootstrap 5 e Bootstrap Icons
Inclua o Bootstrap 5 e o Bootstrap Icons via CDN no <head> do seu HTML:
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css">
Passo 2: Criando um Formulário Moderno
Vamos criar um formulário de login com campos para e-mail, senha e um botão de envio, estilizado com Bootstrap 5 e Bootstrap Icons.
Código do Formulário
<div class="container my-5">
<div class="row justify-content-center">
<div class="col-md-6 col-lg-4">
<form class="p-4 border rounded-3 shadow-sm bg-light">
<h2 class="text-center mb-4">Login</h2>
<!-- Campo de e-mail -->
<div class="mb-3">
<label for="email" class="form-label"><i class="bi bi-envelope-fill me-2"></i>E-mail</label>
<input type="email" class="form-control" id="email" placeholder="seu@email.com" required>
</div>
<!-- Campo de senha -->
<div class="mb-3">
<label for="password" class="form-label"><i class="bi bi-lock-fill me-2"></i>Senha</label>
<input type="password" class="form-control" id="password" placeholder="Digite sua senha" required>
</div>
<!-- Botão de envio -->
<button type="submit" class="btn btn-primary w-100">
<i class="bi bi-box-arrow-in-right me-2"></i>Entrar
</button>
</form>
</div>
</div>
</div>
Explicação do Código
-
Layout:
-
.container e .row: Centralizam o formulário.
-
.col-md-6.col-lg-4: Limita a largura do formulário em telas médias e grandes.
-
.p-4.border.rounded-3.shadow-sm.bg-light: Adiciona padding, borda, sombra e fundo claro para um visual moderno.
-
-
Formulário:
-
.form-control: Estiliza inputs com bordas arredondadas e tamanhos consistentes.
-
.form-label: Formata os rótulos com espaçamento adequado.
-
.mb-3: Adiciona margem inferior entre os elementos.
-
-
Ícones:
-
<i class="bi bi-envelope-fill"> e <i class="bi bi-lock-fill">: Ícones de e-mail e senha para melhor identificação visual.
-
<i class="bi bi-box-arrow-in-right">: Ícone no botão para reforçar a ação de login.
-
.me-2: Adiciona margem à direita dos ícones para espaçamento.
-
-
Botão:
-
.btn.btn-primary.w-100: Botão azul que ocupa toda a largura do container.
-
Passo 3: Adicionando Validação Visual
O Bootstrap 5 facilita a validação de formulários com classes como is-valid e is-invalid. Exemplo com validação:
<div class="mb-3">
<label for="email" class="form-label"><i class="bi bi-envelope-fill me-2"></i>E-mail</label>
<input type="email" class="form-control is-invalid" id="email" placeholder="seu@email.com" required>
<div class="invalid-feedback">
Por favor, insira um e-mail válido.
</div>
</div>
-
.is-invalid: Adiciona borda vermelha ao campo com erro.
-
.invalid-feedback: Exibe mensagem de erro quando o campo é inválido.
Para validação dinâmica, use JavaScript (não abordado aqui, mas o Bootstrap suporta validação via HTML5 ou JS personalizado).
Passo 4: Dicas para Formulários Modernos
-
Use ícones contextuais: Adicione ícones que representem a função do campo (ex.: bi-person para nome, bi-telephone para telefone).
-
Aproveite classes utilitárias:
-
.form-floating: Para labels flutuantes (ex.: <label class="form-floating">).
-
.input-group: Combine inputs com ícones ou botões (ex.: pesquisa com bi-search).
-
-
Estilize botões: Use .btn-outline-* para botões com borda ou .btn-lg para tamanhos maiores.
-
Acessibilidade: Inclua aria-label em ícones sem texto, como <i class="bi bi-search" aria-label="Pesquisar"></i>.
-
Cores e temas: Use classes como bg-light, text-dark ou CSS personalizado para combinar com o design do site.
-
Animações: Adicione transições CSS nos botões ou ícones para interatividade (ex.: transition: transform 0.2s).
Exemplo Completo
<!DOCTYPE html>
<html lang="pt-br">
<head>
<meta charset="UTF-8">
<meta name="viewport" content="width=device-width, initial-scale=1.0">
<title>Formulário Moderno com Bootstrap 5</title>
<link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.3/dist/css/bootstrap.min.css" rel="stylesheet">
<link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.11.3/font/bootstrap-icons.min.css">
</head>
<body>
<div class="container my-5">
<div class="row justify-content-center">
<div class="col-md-6 col-lg-4">
<form class="p-4 border rounded-3 shadow-sm bg-light">
<h2 class="text-center mb-4">Login</h2>
<div class="mb-3">
<label for="email" class="form-label"><i class="bi bi-envelope-fill me-2"></i>E-mail</label>
<input type="email" class="form-control" id="email" placeholder="seu@email.com" required>
</div>
<div class="mb-3">
<label for="password" class="form-label"><i class="bi bi-lock-fill me-2"></i>Senha</label>
<input type="password" class="form-control" id="password" placeholder="Digite sua senha" required>
</div>
<button type="submit" class="btn btn-primary w-100">
<i class="bi bi-box-arrow-in-right me-2"></i>Entrar
</button>
</form>
</div>
</div>
</div>
</body>
</html>
Benefícios para o Desenvolvimento
-
Rapidez: Estilos prontos reduzem a necessidade de CSS personalizado.
-
Consistência: Formulários mantêm o mesmo visual em todo o projeto.
-
Escalabilidade: Ícones e layouts responsivos funcionam em qualquer dispositivo.
-
Manutenção: Atualizações via CDN mantêm o projeto atualizado com novos ícones e estilos.
Com o Bootstrap 5 e Bootstrap Icons, você pode criar formulários modernos, acessíveis e visualmente atraentes em minutos, otimizando o desenvolvimento e melhorando a experiência do usuário.
Demonstração
Compartilhe este artigo: