CSS: Faire que tous les <li> largeur à partir d'une liste et de prendre jusqu'à 100% de l'espace disponible
Je suis en train de faire le menu de navigation horizontal prends toute la largeur de l'élément parent.
J'ai essayé d'utiliser le display:table et display:table-cell mais cela ne fonctionne pas.
D'autres méthodes telles que l'utilisation de débordement et de largeur:automatique ne fonctionne pas non plus.
La liste est créée par Joomla par l'intermédiaire d'un module de menu.
html
<div id="DivN">
<jdoc:include type="modules" name="position-1" />
</div>
html (Lors de l'affichage du navigateur)
<div id="DivN">
<ul class="nav menu nav-pills">
<li class="item-101 current active">
<a href="/site/">Home</a>
</li>
<li class="item-113">
<a href="/site/index.php?Itemid=113">School Info</a>
</li>
<li class="item-114">
<a href="/site/index.php?Itemid=114">Achievements</a>
</li>
<li class="item-115">
<a href="/site/index.php?Itemid=115">News & Events</a>
</li>
<li class="item-116">
<a href="/site/index.php?Itemid=116">Parents & Carers</a>
</li>
<li class="item-117">
<a href="/site/index.php?Itemid=117">Community</a>
</li>
<li class="item-118">
<a href="/site/index.php?Itemid=118">Contact Us</a>
</li>
</ul>
</div>
css
#DivN{
width:100%;
height:42px;
border-top:1px solid black;
border-bottom:1px solid black;
text-decoration:none;
background-color:black;
text-align:center;
font-size:13px;
font-weight:700;
}
#DivN ul{
list-style:none;
width:100%;
}
#DivN ul li{
display:inline-block;
/*float:left;*/
line-height:22px;
height:32px;
list-style-type:none;
margin:4px;
overflow:hidden;
width:auto;
}
J'ai déjà essayé de nombreuses façons pour les derniers jours...
Pourtant, rien de ce qui est trouvé sur l'internet fonctionne.
Je ne sais pas ce que les classes ajouté par Joomla faire, je ne sais où ils sont.
La barre de navigation ressemble à ceci: https://www.dropbox.com/s/5sw94euzbsgwvrc/Capture.PNG
Quand la souris est sur un bouton: https://www.dropbox.com/s/lv73war905ii0rh/2.PNG
Comment puis-je obtenir de sorte que la liste va prendre tout l'espace disponible, alors qu'ils sont de la même taille?
nav menu nav-pills
sont les classes de Bootstrap, il est donc possible que les largeurs sont en train d'être remplacée par Bootstrap. Seriez-vous en mesure de fournir un lien vers votre site afin que je puisse l'inspecter à l'aide de Firebug?- (stkentigernsacademy.org/site) et quand bootstrap chargé ou d'occasion? Peuvent-ils être remplacés?
- Ok, il suffit de jeter un coup d'œil et le menu est déjà en prenant toute la largeur de la boîte noire, cependant, il est aligné au centre, parce que vous utilisez
text-align:center;
Vous devez vous connecter pour publier un commentaire.
Si une largeur égale entre les éléments est important pour vous, vous pouvez flotter les éléments situés à gauche et de leur donner une égale largeur (cela ne fonctionne que lorsque vous savez combien d'articles que vous avez. Alternativement, vous pouvez utiliser js pour déterminer la largeur si vous avez un nombre variable d'éléments de menu):
Ici est un violon: http://jsfiddle.net/kZb9C/
Mis à jour pour faire de la
cf
(clearfix) cible de votre élément: http://jsfiddle.net/4LUQe/16/Si vous souhaitez utiliser le
display: table
approche, n'oubliez pas d'utiliserdisplay: table-cell
sur le<li>
éléments. Aussi, l'utilisationvertical-align: middle
si vous voulez à la verticale du centre de eux. (Noter quetable
ettable-cell
propriétés CSS ne fonctionnent pas dans IE7 et ci-dessous).Ici un violon avec la deuxième approche (
table
): http://jsfiddle.net/kZb9C/1/Je pense que Vous devriez essayer d'utiliser
une fois de plus (pour le
nav
élément) etdisplay: table-row
pour laul
, etdisplay: table-cell
pour lali
.Si Vous avez des problèmes, s'il vous plaît écrire, mais cette méthode DEVRAIT travail.
N'ayez pas peur de
display: table
, il n'est pas un ancien élément de la table, mais vraiment un bon truc pour faire de la bonne mise en page avec de la valider et de la sémantique HTML. Espérons que cela aideMise à JOUR
La même solution de travail: CSS dynamique horizontale de menu de navigation pour remplir largeur spécifique de comportement de table)