Wunderbar. Nun funktionierts einwandfrei.
Ich hab einfach die div und a Blöcke getauscht, nun bedarf es keiner Fehlerkorrektur vom ff mehr und alles wird richtig dargestellt.
EDIT: also nicht getauscht, aber so umgebaut das es von der Logik richtig ist
Danke bugcatcher.
Beiträge von VitaminX
-
-
Zitat von bugcatcher
Logik-Fehler. <a> ist ein Inline-Element, <div> ein Block-Element. Ein Inline-Element kann keinen Block umfassen. Die Verschachtelung ist also ungültig. Firefox beendet/vervollständigt daher das <a> an den Übergängen vom Block. Du kannst z.B. ja auch kein <a><table>[...]</table></a> schreiben.
Ah. Ok.
Hab das schon fast befürchtet, dass es daran liegt.
Danke dir.Stellt sich nur noch die Frage warum ff den Fehler willkürlich/zufällig behebt und das mit einer Quote von vielleicht 10%.
-
hmm. Das hilft noch nicht weiter.
So sieht der richtige Menüpunkt aus.
Zitat
<li id="category">
<a id="category" href="?mid=9&pid=1">
<div style="height: 0px; float: left; padding-top: 0px;">
<img src="ein.gif" style="padding-top: 4px; visibility: hidden;" border="0">
</div>
<div style="padding-left: 9px;">Menüpunktname
</div>
</a>
</li>Und so der vom Firefox "korrigierte".
Zitat
<li id="category">
<a id="category" href="?mid=9&pid=9">
</a><div style="height: 0px; float: left; padding-top: 0px;">
<a id="category" href="?mid=9&pid=9">
<img src="ein.gif" style="padding-top: 4px; visibility: hidden;" border="0">
</a></div>
<a id="category" href="?mid=9&pid=9"> </a><div style="padding-left: 9px;">
<a id="category" href="?mid=9&pid=9">Menüpunktname
</a></div>
<a id="category" href="?mid=9&pid=9"> </a>
</li>Wie man sieht schließt Firefox die <a> Tags. Vermutlich hat er ein Problem damit, wenn im <a> Tag ein <div> enthalten ist.
-
Das Problem sieht so aus, dass serverseitig mit php ein Menü dynamisch, sprich aus der Menge von Datensätzen, aufgebaut wird. Die Menüpunkte fungieren als Links und sind jeweils in einem eigenen Div-Container.
Der Darstellungsfehler taucht nur im Firefox auf, nicht im IE. Wir haben das ganze bereits auf verschiendenen Servern gehabt und das Problem tritt weiterhin auf, kann also nicht am Server liegen (oder php-version etc.).
Hinzu kommt, dass es nicht jedes mal der gleiche Menüpunkt ist, der falsch dargestellt wird, sondern willkürlich mal jeden erwischt. Zwar gibt es Menüpunkte die merkbar öfters falsch dargestellt werden als andere, aber das darf nichts bedeuten, da alle Menüpunkte in der gleichen Schleife erstellt werden und somit identisch sein müssen.
Wir sind bereits so weit, dass wir sagen können, dass der Firefox halt diese besagte Quellcodekorrektur durchführt und dadurch diese Darstellungsfehler auftreten, allerdings macht Firefox diese Korrektur nicht immer und wie gesagt sehr willkürlich (ort/menge).
Den Quelltext haben wir auch schon einige Male runtergebrochen bis er fast nur noch aus dem div-Container bestand, aber das hat keine Änderungen gezeigt.
Deswegen war meine Frage eingangs, ob man diese Html-Korrektur ausschalten kann (wäre eh eine schlechte Lösung gewesen, da es dann jeder client hätte machen müssen), wodurch dann ja die fehlerhafte Darstellung beseitigt wäre.
Da das nicht geht müsste ein anderer Lösungsansatz her, leider haben wir keine Idee mehr was man ändern könnte und weitere Hilfen und Hinweise haben wir im Internet auch nicht auffinden können.Über Tipps sind wir natürlich dankbar =)
-
Hallo zusammen.
Ich habe ein ähnliches Problem und für mich stellt sich die Frage, ob es eine Möglichkeit gibt, die Code-Korrektur von Firefox zu umgehen oder auszuschalten. Das macht zwar nicht wirklich Sinn, würde aber das Problem bestätigen oder auch nicht. (Im Quellcode liegt der Fehler nicht, das wurde ausgiebigst getestet)
Kann man über diese Codekorrektur bei Firefox etwas nach lesen, sprich wie das funktioniert etc. ? Habe dazu nichts hinfreiches finden können.
Ich nutze Firefox 1.5.0.9.
Vielen Dank im vorraus für die Hilfe =)