J'utilise le bootstrap de Twitter pour créer des onglets basculables. Voici le css que j'utilise:
<div class="container">
<ul class="nav nav-tabs">
<li><a href="#home" data-toggle="tab">Home</a></li>
<li><a href="#profile" data-toggle="tab">Profile</a></li>
<li><a href="#messages" data-toggle="tab">Messages</a></li>
<li><a href="#settings" data-toggle="tab">Settings</a></li>
</ul>
</div>
Ce html affiche correctement les onglets, mais tiré vers la gauche (ce qui est censé se produire). J'ai essayé de bricoler le CSS pour que les onglets soient centrés sur la page, mais pas encore de chance. Je pensais que quelqu'un avec plus d'expérience en CSS saurait comment faire cela.
En guise de note, il y a une autre question sur le centrage des pilules de navigation, que j'ai essayé, mais cela ne fonctionnait pas avec des onglets de navigation simples.
Merci.
html
css
twitter-bootstrap
mofeeta
la source
la source
Réponses:
nav-tabs
Les éléments de liste sont automatiquement déplacés vers la gauche par le bootstrap, vous devez donc le réinitialiser et les afficher à la place commeinline-block
, et pour centrer les éléments de menu, nous devons ajouter l'attribut detext-align:center
au conteneur, comme ceci:CSS
Démo: http://jsfiddle.net/U8HGz/2/show/ Modifiez ici: http://jsfiddle.net/U8HGz/2/
Edit: version corrigée qui fonctionne dans IE7 + fournie par l'utilisateur @My Head Hurts down dans les commentaires ci-dessous.
Démo: http://jsfiddle.net/U8HGz/3/show/ Modifiez ici: http://jsfiddle.net/U8HGz/3/
la source
*display: inline; *zoom: 1;
cela fonctionnera également dans IE7 (display: inline-block
n'est pas pris en charge). jsfiddle.net/U8HGz/3La réponse acceptée est parfaite. Il peut être davantage personnalisé afin que vous puissiez l'utiliser côte à côte avec les onglets standard alignés à gauche.
Pour l'utiliser, ajoutez une classe "centrée" à votre élément tabs
la source
L'ajout de la classe
nav-justified
fonctionne pour moi. Ce centre aligne non seulement les onglets, mais il les répartit également bien en haut.Même si la réponse acceptée fonctionne bien, j'ai trouvé ce qui précède plus naturel pour Bootstrap.
la source
Ajouter simplement
quand j'ai mis en place mes onglets, a travaillé pour moi.
Pour par exemple
la source
Vous pouvez simplement utiliser la grille bootstrap pour centrer vos onglets de navigation. Puisque la grille de bootstrap est divisée sur 12 colonnes égales, vous pouvez facilement utiliser 4 colonnes pour votre navigation avec un décalage de 4 colonnes:
<div class="col-sm-4 col-sm-offset-4">
.Par conséquent, vous obtenez votre navigation au milieu de la page (également une solution réactive) avec 4 colonnes libres à gauche et à droite.
J'ai trouvé la grille vraiment utile pour créer des pages Web réactives. Bonne chance!
la source
si vous utilisez simplement bs4, vous pouvez ajouter une
justify-content-center
classe à vos onglets de navigation pour la centrer sur la page. si vous voulez que vos onglets soient justifiés (avec) ajouteznav-justified
classe, dans ce cas, si vous avez 3 éléments dans votre navigation, chacun d'eux a 33% avec. si 5 éléments sont là, chacun a 20% avec.une autre façon est simplement d'ajouter
text-center
si vous utilisez bs3 .la source
Bootstrap lui-même a une classe nommée à cet égard
nav-justified
. Ajoutez-le simplement comme ceci:Si vous souhaitez également aligner le contenu central de
<li>
, créez sondisply: inline-block
.la source
Essaye ça:
la source