Detlef G.: IE-Bug bei Hover über Links

Beitrag lesen

Hallo Landoran

Ja, ich weiß, da ist normalerweise ein LI drin - ich wollte den Code hier nicht zu lang machen und habe versucht alles rauszuwerfen, was für das Problem und den Seitenaufbau nicht unbedingt nötig ist. Das LI hat mit dem eigentlichen Problem aber nichts zu tun.

Die Bugs des IE treten oft nur bei einer ganz bestimmten Kombination aus HTML und CSS auf, oftmals sogar bei einer kleinen Änderung am anderen Ende der Seite, selbst die Größe des Inhalts im Verhältnis zur Fenstergröße oder ein HTML-Kommentar mehr oder weniger kann darauf Einfluss haben.

... Ich hoffte, dass jemand sich grundsätzlich mit den seltsamen Hoverbugs des IE auskennt, da ähnliche Fragen schon öfter in Foren gestellt wurden (wenn auch in anders gelagerten Fällen), und mir schon nach dem Aufruf der Seite und Austesten des Verhaltens vielleicht etwas sagen kann.

Wirklich auskennen? Naja, die Bugs des IE sind unerforschlich. ;)

Das problematische Element ist absolut rechts positioniert. Die Positionierung bezieht sich auf das erste Vorfahrenelement, welches nicht static positioniert ist, also bei dir der Viewport.
Der IE positioniert also an der rechten Seite des Browserfensters, dann folgen Elemente, die breiter sind, er rendert aber erstmal (auch beim Scrollen) nicht alles neu. Wenn der Link jetzt gehovert wird, muss er etwas ändern, also rendert er die Seite neu. Dabei positioniert er das Element wieder rechts, es springt.

Der Effekt tritt nur bei absolut positionierten Elementen auf.
Wenn du die Änderung beim hovern der Links entfernst oder die Elemente mittels float und clear statt position:absolute anordnest, springt nichts.

Auf Wiederlesen
Detlef

--
- Wissen ist gut
- Können ist besser
- aber das Beste und Interessanteste ist der Weg dahin!