J'essaie de distribuer des éléments avec un espacement égal entre eux tout en gardant le premier et le dernier élément alignés à gauche et à droite.
Je pense que les mises en page basées sur la flexibilité offrent une solution facile pour cela, mais je veux également prendre en charge les navigateurs plus anciens.
J'ai déjà créé une solution basée sur JS que je vais poster, mais n'hésitez pas à suggérer de meilleures solutions et à dire si c'est possible en utilisant uniquement CSS.
Voici un violon .
ul {
position: relative;
margin: 0;
font-size: 0;
padding: 0;
display: table;
width: 100%;
list-style: none;
}
ul:after {
content: '';
display: block;
position: absolute;
top: 50%;
background: #000;
left: 0;
height: 1px;
width: 100%;
z-index: -1;
}
li {
display: table-cell;
text-align: center;
}
li:first-child {
text-align: left;
}
li:last-child {
text-align: right;
}
span {
font-family: sans-serif;
display: inline-block;
font-size: 15px;
line-height: 1em;
color: #fff;
background: #000;
padding: 6px 9.34px;
border-radius: 999px;
}
<ul>
<li><span>1</span></li>
<li><span>2</span></li>
<li><span>3</span></li>
<li><span>4</span></li>
<li><span>5</span></li>
</ul>