Cet article explique principalement le formulaire. Ce n'est en fait pas étranger aux personnes qui ont créé des sites Web, et on peut dire que c'est le formulaire de formulaire le plus couramment utilisé pour soumettre des données. Cet article explique principalement le contenu :
1. Cas de base
2. Formulaire en ligne
3. Formulaires disposés horizontalement
4.Contrôles pris en charge
5. Contrôles statiques
6. Statut de contrôle
7. Contrôler la taille
8. Texte d'aide
Cas de base
Les contrôles de formulaire individuels se verront automatiquement attribuer certains styles globaux. Tous les éléments ,
<form role="form"> <div class="form-group"> <label for="exampleInputEmail1">Email address</label> <input type="email" class="form-control" id="exampleInputEmail1" placeholder="Enter email"> </div> <div class="form-group"> <label for="exampleInputPassword1">Password</label> <input type="password" class="form-control" id="exampleInputPassword1" placeholder="Password"> </div> <div class="form-group"> <label for="exampleInputFile">File input</label> <input type="file" id="exampleInputFile"> <p class="help-block">Example block-level help text here.</p> </div> <div class="checkbox"> <label> <input type="checkbox"> Check me out </label> </div> <button type="submit" class="btn btn-default">Submit</button> </form>
La largeur des deux zones de texte est bien de 100 %. Et il existe trois groupes de formulaires.
Formulaire en ligne
Définissez .form-inline pour les contrôles de niveau alignés à gauche et en ligne afin de les organiser de manière plus compacte.
Besoin de définir la largeur : dans Bootstrap, input, select et textarea sont définis sur 100 % de largeur par défaut. Pour utiliser des formulaires en ligne, vous devez définir la largeur spécifiquement pour le contrôle de formulaire que vous utilisez.
Assurez-vous de définir une étiquette : si vous ne définissez pas d'étiquette pour chaque contrôle d'entrée, les lecteurs d'écran ne pourront pas la lire correctement. Pour ces formulaires en ligne, vous pouvez les masquer en définissant .sr uniquement pour l'étiquette.
<form class="form-inline" role="form"> <div class="form-group"> <label class="sr-only" for="exampleInputEmail2">Email address</label> <input type="email" class="form-control" id="exampleInputEmail2" placeholder="Enter email"> </div> <div class="form-group"> <label class="sr-only" for="exampleInputPassword2">Password</label> <input type="password" class="form-control" id="exampleInputPassword2" placeholder="Password"> </div> <div class="checkbox"> <label> <input type="checkbox"> Remember me </label> </div> <button type="submit" class="btn btn-default">Sign in</button> </form>
Formulaire disposé horizontalement
En ajoutant .form-horizontal au formulaire et en utilisant la classe de grille prédéfinie de Bootstrap, les étiquettes et les groupes de contrôle peuvent être disposés horizontalement côte à côte. Cela modifiera le comportement de .form-group afin qu'il se comporte comme des lignes dans un système de grille, il n'est donc plus nécessaire d'utiliser .row.
<form class="form-horizontal" role="form"> <div class="form-group"> <label for="inputEmail3" class="col-sm-2 control-label">Email</label> <div class="col-sm-10"> <input type="email" class="form-control" id="inputEmail3" placeholder="Email"> </div> </div> <div class="form-group"> <label for="inputPassword3" class="col-sm-2 control-label">Password</label> <div class="col-sm-10"> <input type="password" class="form-control" id="inputPassword3" placeholder="Password"> </div> </div> <div class="form-group"> <div class="col-sm-offset-2 col-sm-10"> <div class="checkbox"> <label> <input type="checkbox"> Remember me </label> </div> </div> </div> <div class="form-group"> <div class="col-sm-offset-2 col-sm-10"> <button type="submit" class="btn btn-default">Sign in</button> </div> </div> </form>
Contrôles pris en charge
Les contrôles de formulaire standard pris en charge sont affichés dans le cas de mise en page du formulaire.
Entrée
La plupart des contrôles de formulaire et des champs de saisie de texte. Inclut tous les types pris en charge par HTML5 : texte, mot de passe, datetime, datetime-local, date, mois, heure, semaine, numéro, email, url, recherche, tel et couleur.
Remarque : seuls les contrôles de saisie dont le type est correctement défini peuvent recevoir le style correct.
Exemple de zone de texte
Zone de texte
Contrôles de formulaire prenant en charge le texte multiligne. L'attribut rows peut être modifié selon les besoins.
<h1>textarea</h1> <textarea class="form-control" rows="3"></textarea>
Box à cocher et radio
La case à cocher est utilisée pour sélectionner une ou plusieurs options dans une liste, tandis que la radio est utilisée pour sélectionner une seule option parmi plusieurs options.
Apparence par défaut (empilée)
<div class="checkbox"> <label> <input type="checkbox" value=""> Option one is this and that—be sure to include why it's great </label> </div> <div class="radio"> <label> <input type="radio" name="optionsRadios" id="optionsRadios1" value="option1" checked> Option one is this and that—be sure to include why it's great </label> </div> <div class="radio"> <label> <input type="radio" name="optionsRadios" id="optionsRadios2" value="option2"> Option two can be something else and selecting it will deselect option one </label> </div>
Boxes à cocher en ligne
En appliquant .checkbox-inline ou .radio-inline à une série de cases à cocher ou de commandes radio, vous pouvez organiser ces commandes dans une rangée.
<label class="checkbox-inline"> <input type="checkbox" id="inlineCheckbox1" value="option1"> 1 </label> <label class="checkbox-inline"> <input type="checkbox" id="inlineCheckbox2" value="option2"> 2 </label> <label class="checkbox-inline"> <input type="checkbox" id="inlineCheckbox3" value="option3"> 3 </label>
同理Radio是一样的,只需要添加一下样式即可。
Select
<select class="form-control"> <option>1</option> <option>2</option> <option>3</option> <option>4</option> <option>5</option> </select> <select multiple class="form-control"> <option>1</option> <option>2</option> <option>3</option> <option>4</option> <option>5</option> </select>
静态控件
在水平布局的表单中,如果需要将一行纯文本放置于label的同一行,为
元素添加.form-control-static即可。
<form class="form-horizontal" role="form"> <div class="form-group"> <label class="col-sm-2 control-label">Email</label> <div class="col-sm-10"> <p class="form-control-static">email@example.com</p> </div> </div> <div class="form-group"> <label for="inputPassword" class="col-sm-2 control-label">Password</label> <div class="col-sm-10"> <input type="password" class="form-control" id="inputPassword" placeholder="Password"> </div> </div> </form>
控件状态
通过为控件和label设置一些基本状态,可以为用户提供回馈。
输入焦点
我们移除了某些表单控件的默认outline样式,并对其:focus状态赋予了box-shadow样式。
被禁用的输入框
为输入框设置disabled属性可以防止用户输入,并能改变一点外观,使其更直观。
被禁用的fieldset
为