URL: https://www.overclockers.at/coding-stuff/frage_zu_css_ie_150844/page_2 - zur Vollversion wechseln!
Welcome to the IE Box Model Bug
Also eine kurze Geschichte zu dem Bug:
Der IE in Version 5.x hatte diesen Bug, dass er die Breite falsch berechnet. In den IE 6.x wurde dieser Bug absichtlich übernommen, damit nicht so viele Leute ihre Webseiten umstellen müssen (wie dumm...). Wie auch immer tritt im IE ab Version 6.0 der Bug nicht mehr auf, wenn du eine korrekte Doctype-Deklaration angibst aber nur dann, wenn diese in der ersten Zeile steht es darf also nichts davor stehen. Wie das bei XHTML aber nun mal so ist, stellt man davor normalerweise noch ein <?xml version="1.0" ... ?>, was den IE dazu veranlässt, in den Quirks-Mode zu schalten und die Dimensionen werden wieder falsch berechnet.
Ich habe bei einem größeren Projekt das Problem unter folgenden Annahmen gelöst:
Die Dokumente sind XHTML und starten mit der <?xml ... ?> Deklaration -> IE6.0 im Quirks Mode, IE 5.0 zeigts sowieso falsch an.
IE hat eingeschränkten CSS Support, d.h. man kann "Overrides" verwenden um die Darstellung im IE und FF gleich zu machen. Das geht so:
Im CSS-Teil:
Meine Annahme/Hoffnung war dabei, dass im IE7 Support für solche CSS Selektoren besteht, der Quirks-Mode aber endlich abgeschafft wird. Ich hoffe, das wird sich als wahr herausstellen (kA wie es zZ in der IE7 Beta ist), ansonsten hab ich spätestens wenn Vista rauskommt wieder viel ArbeitCode:.d { width: 195px; border: 5px; } /* Für IE */ html>body .d { width: 200px; } /* Für FF, wird von IE ignoriert */
Nie auf irgendwelche CSS Hacks verlassen. Keine Garantie von IE version zu IE version, ausserdem unschoen.
Richtig sind Conditional comments wie watchout sage. Damit kannst du explizit bestimmte IE versionen targeten und zukuenftige koennen dir nicht dazwischen schiessen.
Zitat von gueWelcome to the IE Box Model Bug
Ich muss meinen Vorpostern zustimmen: Conditional Comments sind die sauberere und bessere Lösung.
@DJ_Cyberdance: Wegen der XML-Deklaration (<?xml ...?> in XHTML Dokumenten:
Quelle: http://www.w3.org/TR/xhtml1/#strictZitatAn XML declaration is not required in all XML documents; however XHTML document authors are strongly encouraged to use XML declarations in all their documents. Such a declaration is required when the character encoding of the document is other than the default UTF-8 or UTF-16 and no encoding was determined by a higher-level protocol.
Wenn du IE6 im Standards-Mode brauchst kannst du das aber vergessen. Sollte meistens ohne Probleme sein, im HTTP Header das richtige Charset anzugeben, somit ...
Die IE-Entwickler haben sich zumindest derzeit noch dagegenen ausgesprochen dass verhalten im IE7 zu aendern ...
Oh wie das paszt: http://blogs.msdn.com/ie/archive/2005/10/12/480242.aspx
ZitatWe’re starting to see the first round of sites and pages breaking due to the CSS fixes we have made [...] It is has been our policy since IE6 that under quirks doctype we will not make any behavioral changes so that existing pages will continue to render unmodified, but under the strict doctype we want to change behavior to be as compliant as possible with the web standards. [...] This leads now to several CSS hacks failing.
Was genau sind conditional comments? JavaScript?
Schon mal im Google eingegeben?
http://www.google.at/search?q=conditional+comments
lol ...
hm.. war wiedermal zu einfach
<traummodus>
Ein Firefox-Plugin für den IE wär echt ein Hammer... das wär einfach nur genial, dann wären wirklich alle Probleme weg... *seufz*
</traummodus>
http://www.golem.de/0510/40989.html
und welche Probleme wären damit weg?Zitat von DJ_Cyberdance<traummodus>
Ein Firefox-Plugin für den IE wär echt ein Hammer... das wär einfach nur genial, dann wären wirklich alle Probleme weg... *seufz*
</traummodus>
Meinst das Eolas? Falls, ich weiss net ob das so eine gute Idee waere wenn das durchgehen wuerde. Betrifft alle Browser.
overclockers.at v4.thecommunity
© all rights reserved by overclockers.at 2000-2025