2009-08-26 8 views
3

Ich habe eine div mit einer festen Größe von 100px. scrollWidth und scrollHeight funktioniert gut, wenn der Text in der div normal ist (kein Wort ist lang genug, um die eine Zeile vollständig zu füllen). Wenn jedoch ein Text mit einem Wort breiter als 100px ist, verursacht dies ein Problem.Warum geben IE und Firefox verschiedene Überlaufdimensionen für ein div zurück?

Lassen Sie uns sagen, der Text ist wie „ABCDEFGHIJKLMNOPQRSTUVWXYZ1234567890“: dann gibt Firefox die falsche scrollWidth (100 in diesem Fall, die als die tatsächliche Breite gleich ist, obwohl die div ist überfüllt). IE gibt jedoch den richtigen scrollWidth (180 in diesem Fall).

Bitte helfen Sie mir, die richtige scrollWidth in Firefox zu bekommen. Entschuldigung, wenn meine Frage vage aussieht.

Antwort

6

Stellen Sie sicher, dass Ihr div den overflow:hidden oder overflow:auto Stil festgelegt hat. Wenn es overflow:visible ist (der Standard), dann wird FF keine größere scrollWidth als es gibt nichts zu scrollen (der Text ist alles gerendert).

Das Verhalten, das Sie mit IE beobachtet haben, ist tatsächlich auf a bug in that browser's implementation von overflow:visible zurückzuführen.

0

Ich hatte das gleiche Problem und fühle, dass dies ein Fehler in Firefox ist nicht IE, wie w3 scrollwidth eines Elements ist (Padding-rechts + Padding-links + Inhaltsbreite) einschließlich der Überlauf. Die folgende Fiddle gibt den richtigen Wert in IE 8 und Chrome, aber in Firefox ist es nicht

http://jsfiddle.net/vdua/Fungh/16/

Verwandte Themen