Wie gleichmäßig divs (jeder mit einer anderen Breite) innerhalb eines übergeordneten div?

8

Ich habe diese Lösung für gleichmäßig beabstandete DIVs gesehen: ( Fluidbreite mit gleich beabstandeten DIVs ), aber es erfordert, dass die DIVs alle die gleiche Breite haben. Dies wird in meinem Fall nicht funktionieren. Ich habe 5 DIVs, die alle unterschiedliche Breiten haben und sie gleichmäßig verteilen möchten. Ist das ohne Javascript möglich?

Zum Beispiel:

%Vor%

Ich brauche es in IE8 +, Firefox 4+, Chrome, Safari.

BEARBEITEN: Eine weitere Voraussetzung: Die divs sollten keinen Platz rechts vom letzten DIV oder links vom ersten DIV haben. Also ist der Leerraum zwischen ihnen gleich der Differenz zwischen der Summe ihrer Breiten und der Breite des Container-Div.

    
Don Rhummy 06.02.2014, 18:09
quelle

2 Antworten

15

könnte man verwenden: display: flex; auf einem übergeordneten Container

%Vor% %Vor%

DEMO: Ссылка

zusätzlicher Rahmen und Hintergrund für Demonstrationszwecke.

Wenn Sie eine Alternative benötigen, die für ältere nav funktioniert, können Sie text-align: justify-Eigenschaften verwenden: Ссылка .

    
G-Cyr 06.02.2014 18:20
quelle
2

Ich bevorzuge Anzeige: flex; wie in der Antwort zuvor gesagt. Aber es gibt eine andere Lösung, wenn ich die Anforderungen richtig verstanden habe. Da ich hier kein IE8 TestVM habe, lasse ich das Testen zu dir. Sie können display: Tabelle verwenden;

Folgende Lösung:

%Vor%

Mit diesem HTML

%Vor%

Testgeige: Ссылка

    
Nico O 06.02.2014 19:12
quelle

Tags und Links