Formularauswahlelement wird in Firefox unregelmäßig abgeschnitten

9

Ich sehe ein seltsames Verhalten in Firefox in Bezug auf die Auswahlfelder.

Abhängig von der Breite des Darstellungsbereichs wird bei einer Auswahl mit einer Breite von 33.333% manchmal die rechte Grenze abgeschnitten.

Siehe bitte diese Geige für ein Beispiel: Ссылка

Was ich habe, ist ein horizontal zentrierter Elterncontainer mit einer absoluten Breite, der eine Auswahl mit einer Teilbreite wie folgt enthält:

%Vor%

Vereinfachte Auszeichnung:

%Vor%

Nun, in Firefox, wenn die Breite des Darstellungsbereichs breiter als 300 Pixel ist und das Element .parent zentriert ist, verhält sich der select merkwürdig.

In geraden Ansichtsfensterbreiten ( 302px , 1326px ) ist alles in Ordnung. Bei ungeraden Darstellungsfeldbreiten ( 301px , 1317px ) wird der rechte Rahmen der Auswahl abgeschnitten.

Ich habe das in Firefox 32-35 gesehen. Andere Browser-Anbieter scheinen nicht betroffen zu sein.

Dies geschieht auch nur dann, wenn die option s schmaler sind als die select .

Ich vermute, dass, wenn die übrig gebliebene Ansichtsfensterbreite eine ungerade Zahl ist, einige Berechnungen für die Eigenschaft margin: auto; halbe Pixel zählen und Rundungsfehler verursachen.

Was ich nicht zu begreifen vermag, ist, wie die Ränder des Elternteils überhaupt Auswirkungen auf seine Kinder haben können, deren Bruchweite, wie ich es verstehe, immer auf Basis der absoluten Breite des Elternteils von% co_de berechnet werden sollte %.

Fehle ich etwas Grundlegendes über das Boxmodell hier, oder ist das einfach ein Bug in Firefox? Gibt es eine bekannte Problemumgehung für dieses Problem, das ich noch nicht ausgegraben habe?

Auf einer Nebennote scheint 300px keine Auswirkung auf dieses Verhalten zu haben.

    
antonin 25.03.2015, 16:00
quelle

3 Antworten

2

DEMO

Dies wird leicht gelöst mit flexbox , um die Größe von select s zu ändern

Hier ist ein Screenshot von Firefox

HTML

%Vor%

CSS

%Vor%

Weitere Informationen über flexbox hier

    
Louie Almeda 31.03.2016 02:11
quelle
0

Dieses Problem wurde an firefox gemeldet , und es gibt eine schöne Problemumgehung:

Ссылка

Ich habe ein bisschen herumgespielt und das scheint mit dem Code zu funktionieren, den du bereitgestellt hast. Die Sache ist, einen Größencontainer zu setzen und dann den Abschnitt nur 99,99% seiner Breite zu machen. Etwas wie das:

%Vor%

Ich habe auch versucht, diesen browserspezifischen Code zu implementieren:

%Vor%

Aber irgendwie schien das in Ihrem Fall das Problem nicht zu lösen.

Ich hoffe, es hat geholfen, Andrew

    
Andrew Adam 31.03.2016 01:51
quelle
0

Sie können dies versuchen:

%Vor%     
E.Agolli 31.03.2016 15:48
quelle

Tags und Links