<ul>.offsetWidth im IE variabel
Winnie
- javascript
Hallo,
wenn ich ein <ul> mit style="width:100px;" und darin ein <li> mit einer Breite von mehr als 100px einbinde, so behauptet javascript, die Breite des <ul> sei auch größer als 100px, obwohl der Browser (IE5) autom. Scrollbars ergänzt hat, damit der übergroße Inhalt angezeigt werden kann.
Wie aber erhalte ich die Breite (ungeachtet der Scrollbar und Überbreite des <li>)?
Also ich würde in dem Fall gerne mittels JS erfahren, dass anfangs 100px als Breite gesetzt worden ist...
DANK sei den Helfern!
Lieber Winnie,
1.) width bezeichnet die Breite eines Elements, ohne padding, margin oder border hinzu zu rechnen. Die endgültige Breite, die das Element später einnimmt, erfordert deshalb das Hinzurechnen der genannten anderen Eigenschaften.
obwohl der Browser (IE5)
2.) IE5 ist kein Browser, sondern eine Krankheit. Auch wenn Microsoft mit dem IE7 schon einige Verbesserungen (nach sieben Jahren!) nachreichen konnte, hinkt diese Produktgruppe (alle IEs) sowas von hinter der aktuellen Messlatte hinterher, dass es wirklich peinlich ist. Daher solltest Du unbedingt zum Prüfen Deiner Layoutfragen einen echten Browser benutzen. Alternativen sind alle legal kostenlos im Internet erhältlich. Firefox, Opera und Safari (und auch Google Chrome) sind echte Browser, die diese Bezeichnung auch verdienen und mit denen man das tatsächliche Aussehen sinnvoll und verlässlich überprüfen kann.
Für den IE kann man dann ein zusätzliches Spezial-Stylesheet einbinden, das die Anzeigefehler dieser Missgeburt wieder korrigiert.
Übrigens berücksichtige ich den IE5 überhaupt nicht mehr. Da inzwischen sogar eine Beta der Version 8 existiert, sehe ich da auch keinen Handlungsbedarf mehr. Meiner Meinung nach wollen die Besucher, die tatsächlich noch den IE5 einsetzen, dass die Seiten darin "besonders" aussehen. Warum ihnen also diesen Herzenswunsch verwehren?
Liebe Grüße,
Felix Riesterer.