Maison interface Web js tutoriel Explication détaillée des compétences du composant_javascript du bouton Bootstrap

Explication détaillée des compétences du composant_javascript du bouton Bootstrap

May 16, 2016 pm 03:04 PM

Les groupes de boutons, comme les composants de menu déroulant, doivent s'appuyer sur le plug-in button.js pour fonctionner correctement.

Aspect structurel : Utilisez un conteneur avec un nom de classe btn-group et placez plusieurs boutons dans ce conteneur .

Le groupe de boutons est également un composant indépendant, vous pouvez donc retrouver le fichier de code source correspondant :

Moins : boutons.less

Sass:_buttons.scss

Css:Bootstrap.css Ligne 3131 ~ Ligne 3291

<div class="btn-group">
<button type="button" class="btn btn-default">
<span class="glyphicon glyphicon-step-backward"></span>
</button>
…
<button type="button" class="btn btn-default">
<span class="glyphicon glyphicon-step-forward"></span>
</button>
</div>
Copier après la connexion

CSS :

.btn-group,
.btn-group-vertical {
position: relative;
display: inline-block;
vertical-align: middle;
}
.btn-group > .btn,
.btn-group-vertical > .btn {
position: relative;
float: left;
}
.btn-group > .btn:hover,
.btn-group-vertical > .btn:hover,
.btn-group > .btn:focus,
.btn-group-vertical > .btn:focus,
.btn-group > .btn:active,
.btn-group-vertical > .btn:active,
.btn-group > .btn.active,
.btn-group-vertical > .btn.active {
z-index: 2;
}
.btn-group > .btn:focus,
.btn-group-vertical > .btn:focus {
outline: none;
}
.btn-group .btn + .btn,
.btn-group .btn + .btn-group,
.btn-group .btn-group + .btn,
.btn-group .btn-group + .btn-group {
margin-left: -1px;
}
Copier après la connexion

En plus de l'élément <button>, vous pouvez également utiliser d'autres éléments de balise, tels que la balise <a>. La seule chose à vérifier est que, quelle que soit la balise utilisée, l'élément tag dans le fichier . Le conteneur btn-group doit contenir Il y a un nom de classe.btn

Les quatre coins du groupe de boutons sont arrondis À l'exception du premier et du dernier bouton, qui ont des coins arrondis sur les côtés, les autres boutons n'ont pas de coins arrondis.

Explication détaillée :

1. Par défaut : tous les boutons ont des coins arrondis

2. À l'exception du premier bouton et du dernier bouton, les coins arrondis des autres boutons sont annulés

3. Seuls le coin supérieur droit et le coin inférieur droit du dernier bouton sont arrondis

Code source :

.btn-group &gt; .btn:not(:first-child):not(:last-child):not(.dropdown-toggle) {
border-radius: 0;
}
.btn-group &gt; .btn:first-child {
margin-left: 0;
}
.btn-group &gt; .btn:first-child:not(:last-child):not(.dropdown-toggle) {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
.btn-group &gt; .btn:last-child:not(:first-child),
.btn-group &gt; .dropdown-toggle:not(:first-child) {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
.btn-group &gt; .btn-group {
float: left;
}
.btn-group &gt; .btn-group:not(:first-child):not(:last-child) &gt; .btn {
border-radius: 0;
}
.btn-group &gt; .btn-group:first-child&gt; .btn:last-child,
.btn-group &gt; .btn-group:first-child&gt; .dropdown-toggle {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
.btn-group &gt; .btn-group:last-child&gt; .btn:first-child {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
Copier après la connexion

Barre d'outils du groupe de boutons

Dans l'éditeur de texte enrichi, pour organiser des groupes de boutons ensemble, tels que copier, couper, coller un groupe, un groupe aligné à gauche, aligné au milieu, aligné à droite et aligné aux deux extrémités, vous devez utiliser bootstrap Frame barre d'outils des boutons btn-barre d'outils

&lt;div class="btn-toolbar"&gt;
&lt;div class="btn-group"&gt;
…
&lt;/div&gt;
&lt;div class="btn-group"&gt;
…
&lt;/div&gt;
&lt;div class="btn-group"&gt;
…
&lt;/div&gt;
&lt;div class="btn-group"&gt;
…
&lt;/div&gt;
&lt;/div&gt;
Copier après la connexion

Principe : L'objectif principal est de faire flotter les multiples éléments du groupe .btn-group du conteneur et de maintenir une marge gauche de 5 px entre les groupes

.btn-toolbar {
margin-left: -5px;
}
.btn-toolbar .btn-group,
.btn-toolbar .input-group {
float: left;
}
.btn-toolbar &gt; .btn,
.btn-toolbar &gt; .btn-group,
.btn-toolbar &gt; .input-group {
margin-left: 5px;
}
Copier après la connexion

Faites attention à la suppression des flottants sur la barre d'outils btn

.btn-toolbar:before,
.btn-toolbar:after{
 display: table;
content: " ";
}
.btn-toolbar:after{
clear: both;
}
Copier après la connexion

Exemple :

&lt;div class="btn-toolbar"&gt;
&lt;div class="btn-group"&gt;
&lt;button class="btn btn-default" type="button"&gt;
&lt;span class="glyphicon glyphicon-align-left"&gt;&lt;/span&gt;
&lt;/button&gt;
&lt;button class="btn btn-default" type="button"&gt;
&lt;span class="glyphicon glyphicon-align-center"&gt;&lt;/span&gt;
&lt;/button&gt;
&lt;button class="btn btn-default"&gt;
&lt;span class="glyphicon glyphicon-align-right"&gt;&lt;/span&gt;
&lt;/button&gt;
&lt;button class="btn btn-default" type="button"&gt;
&lt;span class="glyphicon glyphicon-align-justify"&gt;&lt;/span&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;div class="btn-group"&gt;
&lt;button class="btn btn-default" type="button"&gt;
&lt;span class="glyphicon glyphicon-font"&gt;&lt;/span&gt;
&lt;/button&gt;
&lt;button class="btn btn-default" type="button"&gt;
&lt;span class="glyphicon glyphicon-bold"&gt;&lt;/span&gt;
&lt;/button&gt;
&lt;/div&gt;
&lt;/div&gt;
Copier après la connexion

Regroupement imbriqué de boutons

Souvent, nous organisons des groupes de boutons communs dans des menus déroulants pour obtenir un effet similaire à un menu de navigation :

Lors de son utilisation, changez simplement le nom de classe du conteneur déroulant utilisé pour créer le menu déroulant en btn-group, et placez-le au même niveau que le bouton ordinaire :

&lt;div class="btn-group"&gt;
&lt;button class="btn btn-default" type="button"&gt;首页&lt;/button&gt;
&lt;button class="btn btn-default" type="button"&gt;产品展示&lt;/button&gt;
&lt;button class="btn btn-default" type="button"&gt;案例分析&lt;/button&gt;
&lt;button class="btn btn-default" type="button"&gt;联系我们&lt;/button&gt;
&lt;div class="btn-group"&gt;
&lt;button class="btn btn-default dropdown-toggle" data-toggle="dropdown" type="button"&gt;
关于我们&lt;span class="caret"&gt;&lt;/span&gt;
&lt;/button&gt;
&lt;ul class="dropdown-menu"&gt;
&lt;li&gt;&lt;a href="#"&gt;公司简介&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#"&gt;企业文化&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#"&gt;组织结构&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#"&gt;客服服务&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
.btn-group &gt; .btn-group {
float: left;
}
.btn-group &gt; .btn-group:not(:first-child):not(:last-child) &gt; .btn {
border-radius: 0;
}
.btn-group &gt; .btn-group:first-child&gt; .btn:last-child,
.btn-group &gt; .btn-group:first-child&gt; .dropdown-toggle {
border-top-right-radius: 0;
border-bottom-right-radius: 0;
}
.btn-group &gt; .btn-group:last-child&gt; .btn:first-child {
border-top-left-radius: 0;
border-bottom-left-radius: 0;
}
.btn-group .dropdown-toggle:active,
.btn-group.open .dropdown-toggle {
outline: 0;
}
.btn-group &gt; .btn + .dropdown-toggle {
padding-right: 8px;
padding-left: 8px;
}
.btn-group &gt; .btn-lg + .dropdown-toggle {
padding-right: 12px;
padding-left: 12px;
}
.btn-group.open .dropdown-toggle {
-webkit-box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
box-shadow: inset 0 3px 5px rgba(0, 0, 0, .125);
}
.btn-group.open .dropdown-toggle.btn-link {
-webkit-box-shadow: none;
box-shadow: none;
}
Copier après la connexion

Boutons regroupés verticalement

Remplacez simplement le nom de la classe de regroupement horizontal .btn-group par .btn-group-vertical.

&lt;div class="btn-group-vertical"&gt;
&lt;button class="btn btn-default" type="button"&gt;首页&lt;/button&gt;
&lt;button class="btn btn-default" type="button"&gt;产品展示&lt;/button&gt;
&lt;button class="btn btn-default" type="button"&gt;案例分析&lt;/button&gt;
&lt;button class="btn btn-default" type="button"&gt;联系我们&lt;/button&gt;
&lt;div class="btn-group"&gt;
&lt;button class="btn btn-default dropdown-toggle" data-toggle="dropdown" type="button"&gt;
关于我们&lt;span class="caret"&gt;&lt;/span&gt;
&lt;/button&gt;
&lt;ul class="dropdown-menu"&gt;
&lt;li&gt;&lt;a href="#"&gt;公司简介&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#"&gt;企业文化&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#"&gt;组织结构&lt;/a&gt;&lt;/li&gt;
&lt;li&gt;&lt;a href="#"&gt;客服服务&lt;/a&gt;&lt;/li&gt;
&lt;/ul&gt;
&lt;/div&gt;
&lt;/div&gt;
.btn-group-vertical &gt; .btn,
.btn-group-vertical &gt; .btn-group,
.btn-group-vertical &gt; .btn-group &gt; .btn {
display: block;
float: none;
width: 100%;
max-width: 100%;
}
.btn-group-vertical &gt; .btn-group &gt; .btn {
float: none;
}
.btn-group-vertical &gt; .btn + .btn,
.btn-group-vertical &gt; .btn + .btn-group,
.btn-group-vertical &gt; .btn-group + .btn,
.btn-group-vertical &gt; .btn-group + .btn-group {
margin-top: -1px;
margin-left: 0;
}
.btn-group-vertical &gt; .btn:not(:first-child):not(:last-child) {
border-radius: 0;
}
.btn-group-vertical &gt; .btn:first-child:not(:last-child) {
border-top-right-radius: 4px;
border-bottom-right-radius: 0;
border-bottom-left-radius: 0;
}
.btn-group-vertical &gt; .btn:last-child:not(:first-child) {
border-top-left-radius: 0;
border-top-right-radius: 0;
border-bottom-left-radius: 4px;
}
.btn-group-vertical &gt; .btn-group:not(:first-child):not(:last-child) &gt; .btn {
border-radius: 0;
}
.btn-group-vertical &gt; .btn-group:first-child:not(:last-child) &gt; .btn:last-child,
.btn-group-vertical &gt; .btn-group:first-child:not(:last-child) &gt; .dropdown-toggle {
border-bottom-right-radius: 0;
border-bottom-left-radius: 0;
}
.btn-group-vertical &gt; .btn-group:last-child:not(:first-child) &gt; .btn:first-child {
border-top-left-radius: 0;
border-top-right-radius: 0;
}
Copier après la connexion

Le bouton de division égale est également appelé bouton de regroupement adaptatif :

La largeur de l'ensemble du groupe de boutons correspond à 100 % du conteneur, et chaque bouton du groupe de boutons divise également la largeur de l'ensemble du conteneur. Par exemple, il y a cinq boutons dans un groupe de boutons et chaque bouton fait 20. % de la largeur du conteneur ; un bouton Il y a quatre boutons dans le groupe, chaque bouton fait 25% de la largeur du conteneur

Méthode d'implémentation : ajoutez simplement un nom de classe.btn-group-justified au bouton group.btn-group

&lt;div class="btn-group btn-group-justified"&gt;
&lt;buttton class="btn btn-default" type="button"&gt;首页&lt;/buttton&gt;
&lt;buttton class="btn btn-default" type="button"&gt;案例分析&lt;/buttton&gt;
&lt;buttton class="btn btn-default" type="button"&gt;联系我们&lt;/buttton&gt;
&lt;buttton class="btn btn-default" type="button"&gt;关于我们&lt;/buttton&gt;
&lt;/div&gt;
.btn-group-justified {
display: table;
width: 100%;
table-layout: fixed;
border-collapse: separate;
}
.btn-group-justified &gt; .btn,
.btn-group-justified &gt; .btn-group {
display: table-cell;
float: none;
width: 1%;
}
.btn-group-justified &gt; .btn-group .btn {
width: 100%;
}
Copier après la connexion

Simulez .btn-group-justified dans un tableau (affichage : tableau) et simulez le modèle de bouton à l'intérieur dans une cellule de tableau (affichage : table-cell).

Remarque : Lorsque vous créez des groupes de boutons égaux, essayez d'utiliser la balise <a> pour créer des boutons, car lorsque vous utilisez l'élément de balise bouton, l'utilisation de display: table n'est pas conviviale dans certains navigateurs <.>

Lecture recommandée par Script House :

Explication détaillée du bouton Bootstrap

Ce qui précède est le composant du bouton Bootstrap introduit par l'éditeur. J'espère qu'il sera utile à tout le monde !

Déclaration de ce site Web
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn

Article chaud

Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Article chaud

Repo: Comment relancer ses coéquipiers
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
R.E.P.O. Crystals d'énergie expliqués et ce qu'ils font (cristal jaune)
1 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Hello Kitty Island Adventure: Comment obtenir des graines géantes
3 Il y a quelques semaines By 尊渡假赌尊渡假赌尊渡假赌
Combien de temps faut-il pour battre Split Fiction?
3 Il y a quelques semaines By DDD

Tags d'article chaud

Bloc-notes++7.3.1

Bloc-notes++7.3.1

Éditeur de code facile à utiliser et gratuit

SublimeText3 version chinoise

SublimeText3 version chinoise

Version chinoise, très simple à utiliser

Envoyer Studio 13.0.1

Envoyer Studio 13.0.1

Puissant environnement de développement intégré PHP

Dreamweaver CS6

Dreamweaver CS6

Outils de développement Web visuel

SublimeText3 version Mac

SublimeText3 version Mac

Logiciel d'édition de code au niveau de Dieu (SublimeText3)

Remplacer les caractères de chaîne en javascript Remplacer les caractères de chaîne en javascript Mar 11, 2025 am 12:07 AM

Remplacer les caractères de chaîne en javascript

Tutoriel de configuration de l'API de recherche Google personnalisé Tutoriel de configuration de l'API de recherche Google personnalisé Mar 04, 2025 am 01:06 AM

Tutoriel de configuration de l'API de recherche Google personnalisé

Exemple Couleurs Fichier JSON Exemple Couleurs Fichier JSON Mar 03, 2025 am 12:35 AM

Exemple Couleurs Fichier JSON

8 Superbes plugins de mise en page JQuery Page 8 Superbes plugins de mise en page JQuery Page Mar 06, 2025 am 12:48 AM

8 Superbes plugins de mise en page JQuery Page

Créez vos propres applications Web Ajax Créez vos propres applications Web Ajax Mar 09, 2025 am 12:11 AM

Créez vos propres applications Web Ajax

Qu'est-ce que & # x27; ceci & # x27; en javascript? Qu'est-ce que & # x27; ceci & # x27; en javascript? Mar 04, 2025 am 01:15 AM

Qu'est-ce que & # x27; ceci & # x27; en javascript?

Améliorez vos connaissances jQuery avec le spectateur source Améliorez vos connaissances jQuery avec le spectateur source Mar 05, 2025 am 12:54 AM

Améliorez vos connaissances jQuery avec le spectateur source

10 feuilles de triche mobiles pour le développement mobile 10 feuilles de triche mobiles pour le développement mobile Mar 05, 2025 am 12:43 AM

10 feuilles de triche mobiles pour le développement mobile

See all articles