Code Templates Collection angularforall.com

- Formulaires Bootstrap 5 — Master Reference

Bootstrap 5 Formulaire Input Form Validation Composant Reference Snippet Html Ui Bootstrap Icons

Référence complète des formulaires Bootstrap 5 : tous types d'inputs, validation, groupes, styles avancés et composants de saisie pour interfaces web.

<!DOCTYPE html>
<html lang="fr">
<head>
    <meta charset="UTF-8" />
    <meta name="copyright" content="AngularForAll" />
    <meta name="author" content="AngularForAll" />
    <meta name="robots" content="noindex, nofollow" />
    <meta name="viewport" content="width=device-width, initial-scale=1.0" />
    <meta http-equiv="Cache-Control" content="public, max-age=604800" />
    <title>Snippets Master Input HTML 2026 05111335 | AngularForAll</title>
<!-- Bootstrap 5 CSS -->
    <link href="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/css/bootstrap.min.css" rel="stylesheet">
    <!-- Bootstrap Icons -->
    <link rel="stylesheet" href="https://cdn.jsdelivr.net/npm/bootstrap-icons@1.10.0/font/bootstrap-icons.css">
    
    <style>
        body { background-color: #f4f7f6; }
        .card { border: none; box-shadow: 0 4px 12px rgba(0,0,0,0.05); margin-bottom: 2rem; }
        .card-header { background-color: #fff; font-weight: bold; border-bottom: 2px solid #f1f1f1; }
        .form-label { font-weight: 500; color: #444; }
        .section-title { color: #0d6efd; margin-bottom: 1.5rem; border-left: 5px solid #0d6efd; padding-left: 15px; }
    </style>
</head>
<body>

<div class="container py-5">
    <header class="text-center mb-5">
        <h1 class="display-5 fw-bold">Master Formulaire Bootstrap 5</h1>
        <p class="text-muted">Répertoire complet des inputs, attributs et styles</p>
    </header>

    <!-- SECTION 1 : INPUT TYPES STANDARDS -->
    <h3 class="section-title">1. Types d'Inputs Standards</h3>
    <div class="card">
        <div class="card-body">
            <div class="row g-3">
                <div class="col-md-4">
                    <label class="form-label">Texte simple (type="text")</label>
                    <input type="text" class="form-control" placeholder="Nom complet">
                </div>
                <div class="col-md-4">
                    <label class="form-label">Email (type="email")</label>
                    <input type="email" class="form-control" placeholder="name@example.com">
                </div>
                <div class="col-md-4">
                    <label class="form-label">Mot de passe (type="password")</label>
                    <input type="password" class="form-control" value="secret">
                </div>
                <div class="col-md-4">
                    <label class="form-label">Nombre (type="number")</label>
                    <input type="number" class="form-control" step="1" min="0" max="100">
                </div>
                <div class="col-md-4">
                    <label class="form-label">Téléphone (type="tel")</label>
                    <input type="tel" class="form-control" placeholder="+212 600 000 000">
                </div>
                <div class="col-md-4">
                    <label class="form-label">URL (type="url")</label>
                    <input type="url" class="form-control" placeholder="https://www.mnxdev.com">
                </div>
            </div>
        </div>
    </div>

    <!-- SECTION 2 : DATES, COULEURS & RANGES -->
    <h3 class="section-title">2. Dates, Couleurs et Curseurs</h3>
    <div class="card">
        <div class="card-body">
            <div class="row g-3">
                <div class="col-md-3">
                    <label class="form-label">Date</label>
                    <input type="date" class="form-control">
                </div>
                <div class="col-md-3">
                    <label class="form-label">Heure</label>
                    <input type="time" class="form-control">
                </div>
                <div class="col-md-3">
                    <label class="form-label">Couleur</label>
                    <input type="color" class="form-control form-control-color w-100" title="Choisir une couleur">
                </div>
                <div class="col-md-3">
                    <label class="form-label">Range (0-100)</label>
                    <input type="range" class="form-range">
                </div>
            </div>
        </div>
    </div>

    <!-- SECTION 3 : SELECTS & DATALISTS -->
    <h3 class="section-title">3. Listes de sélection</h3>
    <div class="card">
        <div class="card-body">
            <div class="row g-3">
                <div class="col-md-4">
                    <label class="form-label">Select Standard</label>
                    <select class="form-select">
                        <option selected>Ouvrir ce menu</option>
                        <option value="1">Option Un</option>
                        <option value="2">Option Deux</option>
                    </select>
                </div>
                <div class="col-md-4">
                    <label class="form-label">Select avec Groupes</label>
                    <select class="form-select">
                        <optgroup label="Développement">
                            <option>Frontend</option>
                            <option>Backend</option>
                        </optgroup>
                        <optgroup label="Design">
                            <option>UI/UX</option>
                        </optgroup>
                    </select>
                </div>
                <div class="col-md-4">
                    <label class="form-label">Datalist (Auto-complétion)</label>
                    <input class="form-control" list="datalistOptions" placeholder="Tapez pour chercher...">
                    <datalist id="datalistOptions">
                        <option value="Casablanca">
                        <option value="Rabat">
                        <option value="Marrakech">
                    </datalist>
                </div>
            </div>
        </div>
    </div>

    <!-- SECTION 4 : CHECKBOXES, RADIOS & SWITCHES -->
    <h3 class="section-title">4. Checkbox, Radios & Interrupteurs</h3>
    <div class="card">
        <div class="card-body">
            <div class="row">
                <div class="col-md-4">
                    <p class="fw-bold">Checkboxes</p>
                    <div class="form-check">
                        <input class="form-check-input" type="checkbox" id="check1" checked>
                        <label class="form-check-label" for="check1">Coché par défaut</label>
                    </div>
                    <div class="form-check">
                        <input class="form-check-input" type="checkbox" id="check2" indeterminate>
                        <label class="form-check-label" for="check2">État indéterminé (via JS)</label>
                    </div>
                </div>
                <div class="col-md-4">
                    <p class="fw-bold">Radios</p>
                    <div class="form-check">
                        <input class="form-check-input" type="radio" name="radioGroup" id="r1" checked>
                        <label class="form-check-label" for="r1">Option A</label>
                    </div>
                    <div class="form-check">
                        <input class="form-check-input" type="radio" name="radioGroup" id="r2">
                        <label class="form-check-label" for="r2">Option B</label>
                    </div>
                </div>
                <div class="col-md-4">
                    <p class="fw-bold">Switches (Interrupteurs)</p>
                    <div class="form-check form-switch">
                        <input class="form-check-input" type="checkbox" id="flexSwitchCheckDefault">
                        <label class="form-check-label" for="flexSwitchCheckDefault">Mode sombre</label>
                    </div>
                </div>
            </div>
        </div>
    </div>

    <!-- SECTION 5 : ATTRIBUTS SPECIAUX (Disabled, Readonly, Sizes) -->
    <h3 class="section-title">5. Attributs & Tailles</h3>
    <div class="card">
        <div class="card-body">
            <div class="row g-3">
                <div class="col-md-4">
                    <label class="form-label">Désactivé (disabled)</label>
                    <input type="text" class="form-control" disabled value="Lecture seule">
                </div>
                <div class="col-md-4">
                    <label class="form-label">Lecture seule (readonly)</label>
                    <input type="text" class="form-control" readonly value="Contenu non modifiable">
                </div>
                <div class="col-md-4">
                    <label class="form-label">Requis (required)</label>
                    <input type="text" class="form-control border-danger" required placeholder="Ce champ est obligatoire">
                </div>
                <div class="col-md-6">
                    <label class="form-label">Grande Taille (form-control-lg)</label>
                    <input type="text" class="form-control form-control-lg" placeholder=".form-control-lg">
                </div>
                <div class="col-md-6">
                    <label class="form-label">Petite Taille (form-control-sm)</label>
                    <input type="text" class="form-control form-control-sm" placeholder=".form-control-sm">
                </div>
            </div>
        </div>
    </div>

    <!-- SECTION 6 : INPUT GROUPS & TEXTAREA -->
    <h3 class="section-title">6. Groupes d'Inputs & Zones de texte</h3>
    <div class="card">
        <div class="card-body">
            <div class="row g-3">
                <div class="col-md-6">
                    <label class="form-label">Input Group avec Icône</label>
                    <div class="input-group mb-3">
                        <span class="input-group-text" id="basic-addon1">@</span>
                        <input type="text" class="form-control" placeholder="Nom d'utilisateur">
                    </div>
                    <div class="input-group mb-3">
                        <input type="text" class="form-control" placeholder="Montant">
                        <span class="input-group-text">MAD</span>
                        <span class="input-group-text">.00</span>
                    </div>
                </div>
                <div class="col-md-6">
                    <label class="form-label">Zone de texte (Textarea)</label>
                    <textarea class="form-control" rows="4" placeholder="Votre message ici..."></textarea>
                </div>
                <div class="col-md-12">
                    <label class="form-label">Upload de fichier (type="file")</label>
                    <input class="form-control" type="file" multiple>
                </div>
            </div>
        </div>
    </div>

    <!-- SECTION 7 : FLOATING LABELS -->
    <h3 class="section-title">7. Étiquettes flottantes (Floating Labels)</h3>
    <div class="card bg-primary text-white">
        <div class="card-body">
            <div class="row g-3">
                <div class="col-md-6">
                    <div class="form-floating text-dark">
                        <input type="email" class="form-control" id="floatingInput" placeholder="name@example.com">
                        <label for="floatingInput">Adresse Email</label>
                    </div>
                </div>
                <div class="col-md-6">
                    <div class="form-floating text-dark">
                        <select class="form-select" id="floatingSelect">
                            <option selected>Choisir un service</option>
                            <option value="1">Développement Web</option>
                            <option value="2">Conseil IT</option>
                        </select>
                        <label for="floatingSelect">Type de projet</label>
                    </div>
                </div>
            </div>
        </div>
    </div>

    <!-- SECTION 8 : VALIDATION STATES -->
    <h3 class="section-title">8. États de Validation</h3>
    <div class="card">
        <div class="card-body">
            <form class="row g-3 was-validated">
                <div class="col-md-6">
                    <label class="form-label">Champ Valide</label>
                    <input type="text" class="form-control is-valid" value="Donnée correcte" required>
                    <div class="valid-feedback">C'est parfait !</div>
                </div>
                <div class="col-md-6">
                    <label class="form-label">Champ Invalide</label>
                    <input type="text" class="form-control is-invalid" required>
                    <div class="invalid-feedback">Veuillez remplir ce champ.</div>
                </div>
            </form>
        </div>
    </div>

</div>

<!-- Bootstrap 5 JS -->
<script src="https://cdn.jsdelivr.net/npm/bootstrap@5.3.0/dist/js/bootstrap.bundle.min.js"></script>

<script>
    // Script pour l'état indéterminé de la checkbox de démo
    document.getElementById('check2').indeterminate = true;
</script>

</body>
</html>

Télécharger le fichier source

Partager