Die div-Breite ändert sich in Firefox vs. Chrome nach der Größenänderung des Ansichtsfensters anders

8

Ich habe einen kleinen Unterschied bemerkt, nachdem ich das Ansichtsfenster mit einem Layout, das auf Flexbox-Containern basiert, verkleinert habe. Das folgende Snippet enthält einige Links in zwei Containern ( .container und .subcontainer ). In Chrome (45 Beta) haben die divs mit der Klasse element unabhängig von der Größe des Darstellungsbereichs dieselbe Breite. In Firefox (40) ändert sich die Breite jedes div jedoch abhängig vom Inhalt.

%Vor% %Vor%

Ich denke, die Funktion "Code-Snippet ausführen" erlaubt es nicht, diese Änderung zu sehen. Daher stelle ich einige Gifs vor, die den Unterschied zeigen:

Chrome:

Firefox:

Wie Sie sehen, teilen sich die Boxen in Chrome die gleiche Breite, aber Firefox beschränkt die erste Box ziemlich deutlich und die anderen Boxen behalten ihre Proportionen. Was ist der Grund für diese Diskrepanz und wie kann ich das beheben? Ich hätte gerne die gleiche Breite für jede Box. Das war der Zweck der Verwendung von flex: 1 0 0 an erster Stelle.

Danke

    
Robert Smith 14.08.2015, 05:40
quelle

1 Antwort

6

Versuchen Sie, min-width auf einen beliebigen Wert oder nur 0px :

zu setzen %Vor%

Geige

Details

Für Firefox-Flex-Elemente hat min-width:min-content standardmäßig, wie hier

  

In diesen Implementierungen wurde ein etwas einfacheres Verhalten implementiert   für dieses Schlüsselwort: es berechnet Min-Inhalt auf Flex-Elemente, und es   berechnet auf alles andere 0.

Wenn wir also min-width:-webkit-min-content für Chrome einstellen, wird es das gleiche unerwünschte Verhalten haben - jsfiddle .

    
Kristina Kurshakova 16.08.2015, 08:42
quelle