Overflow: Versteckt nicht in Firefox 5, wenn über JavaScript eingestellt

9

Dies wird als Fehler in Firefox bestätigt und Sie können mehr darüber in Ссылка

Ich setze overflow auf hidden über jQuery, aber es wird nicht in Firefox 5 angewendet, während es in anderen Browsern gut angewendet wird. Bitte testet dieses jsfiddle, um das Problem selbst zu sehen: Ссылка Und hier ist ein Bild davon, wie es in Firefox 5 aussieht: Ссылка und ein Bild davon in Chrome zum Vergleich: Ссылка Was ist mit overflow in FF5 falsch?

BEARBEITEN:

Nach einigen Tests habe ich herausgefunden, dass die Eigenschaft overflow auf Elemente angewendet wird, die dynamisch über JavaScript hinzugefügt wurden. Das heißt, wir können den Fehler umgehen, indem wir das betreffende Element durch seine Kopie ersetzen und overflow: hidden wie folgt in jQuery anwenden:

%Vor%

Nur als eine Randnotiz könnten wir sogar vermeiden, das Element zu ersetzen, wenn dies möglich ist:

%Vor%

EDIT 2:

Wie weitere Tests gezeigt haben, wird overflow: hidden auch gut angewendet, wenn die position -Eigenschaft auf absolute gesetzt ist oder wenn die display -Eigenschaft auf block oder inline-block gesetzt ist, über CSS statisch oder über JavaScript. So etwas kann leicht helfen:

%Vor%

EDIT 3:

Das Problem scheint nur in Bezug auf textarea Elemente zu sein. Ich habe es an DIV-Elementen getestet und der Inhalt wird gut abgeschnitten. Also, ich vermute, es liegt daran, dass Textarea-Elemente inline sind und die Überlauf-Eigenschaft für Block-Level-Elemente arbeiten soll.

    
Polar 13.09.2011, 08:08
quelle

1 Antwort

3

Dies scheint ein Fehler in Firefox zu sein. Der Aufruf von jQuery, den Überlauf gleich hidden zu setzen, scheint in Firefox nicht zu funktionieren, es sei denn, Sie setzen den css-Überlauf des Textbereichs auf einen Wert in Ihrem css- oder style-Attribut und weisen jQuery dann an, den Überlauf auf hidden zu setzen.

%Vor%

Obwohl ich neugierig bin, warum Sie nicht einfach eine CSS-Klasse für diesen Textbereich erstellen, anstatt sich auf JavaScript zu verlassen, um die Bildlaufleisten überhaupt zu verbergen.

    
Chris Pietschmann 10.09.2011, 13:33
quelle

Tags und Links