comment faire un ul li css menu avec la variable d'espace entre les éléments

L'idée est de faire un menu avec un montant fixe d'éléments. Chacun des éléments doit avoir un padding fixe sur eux pour leur donner un aspect décent au moment de placer une bordure autour d'eux. (jusqu'ici tout va bien)
Mais ces éléments doivent être réparties dans un div de taille fixe, espacés uniformément les éléments eux-mêmes ne seront pas de la même taille que cela dépend du texte à l'intérieur de ces éléments.

Ce que je n'arrive pas à comprendre est comment s'assurer que les éléments sont sur 1 ligne avec une dynamique (plus ou moins) espacer uniformément entre eux dans une div (dans mon cas 1000px). Le premier élément devrait être doublée pour le bord gauche de la div. Le dernier point doit être doublée pour le bord droit de la div.

Ci-dessous est ce que j'ai jusqu'à présent. Cela met déjà le remplissage et de bordure sur elle, mais je ne peux pas définir un margin: 0 auto sur elle, bien que je le peux, mais il ne fait rien. Le principal problème est que l'espacement entre les deux doit être dynamique, parce que les éléments ont tendance à sauter sur le zoom du navigateur qui bousille l'alignement de l'extérieur, les éléments et les rend même certains éléments de saut à la ligne suivante. C'est pourquoi (zoom mess des choses - en particulier avec des largeurs fixes) je suis réticent à mettre une largeur réelle sur chacun des éléments (je sais que j'ai besoin d'une largeur à utiliser margin: 0 auto correctement, mais même quand je fais de l'utilisation d'une largeur, il ne semble pas faire ce que je veux faire).

<div id="navigation">
    <ul>
        <li class="menu-1"><a href="" >Home</a></li>
        <li class="menu-2"><a href="" class="">Nieuws</a></li>
        <li class="menu-3"><a href="" class="">Producten</a></li>
        <li class="menu-4"><a href="" class="">Algemene informatie</a></li>
        <li class="menu-5"><a href="" class="">Promoties</a></li>
        <li class="menu-6"><a href="" class="">Algemene voorwaarden</a></li>
        <li class="menu-7"><a href="" class="">Contact</a></li>
    </ul>
</div>

#navigation ul {
    margin:0px;
    padding:0px;
    list-style:none;
    width:1000px;   
    display:block;
}

#navigation li {
    float: left;
    display:inline;
}

#navigation li a {
    padding:10px 15px 10px 15px;
    float:right;

    display: block;
    border: 0.1em solid #dcdce9;
    color: #6d6f71;
    text-decoration: none;
    text-align: center; 
    font-size:18px;
    font-weight:bold;
}

#navigation{
    width:100%;
}
La flexbox modèle va résoudre cela, finalement.

OriginalL'auteur 3xil3 | 2012-05-24