Yvi: hover - Probleme mit Opera

Hallo,

ich hab ein Problem mit der Darstellung meines Menüs unter Opera (8.54). Es wird beim ersten Überfahren des Links die hover-Grafik nicht angezeigt. Beim nächsten Überfahren (aber nur ohne Neuladen der Seite) zeigt er die Grafik an?! Woran könnte das liegen? Für Eure Hilfe bin ich überaus dankbar :o)
Hier ein paar Quellcode-Schnipsel:

-- html --
<div class="menue">
  <a id="xxx" class="menue" href="xxx.html"></a>
  <a id="yyy" class="menue" href="yyy.html"></a>
  ...
</div>

-- css --
a.menue {
  width:139px;
  height:31px;
  display:block;
}

#xxx { background:url(xxx_off.gif) no-repeat; }
#xxx:focus { background-image:url(xxx_on.gif); }
#xxx:hover { background-image:url(xxx_on.gif); }
#xxx:active { background-image:url(xxx_on.gif); }

... und das gleiche nur mit anderen Bildern für yyy

Ich weiß, mit Klasse und ID ist das unglücklich, aber ich mag nicht für jeden Menüpunkt Breite, Höhe und display separat definieren. Das ist bei allen gleich. Gibt es da eine elegantere Lösung?

  1. Hallo,

    Ich weiß nicht genau was den Opera stört, aber mit der Methode von 1ngo oder der von Andreas Kalt sollte es bei allen Browsern tun. Zudem vermeidet man das flackern, wenn die "hover"Grafik das erste Mal geladen wird und noch nicht im Cache verfügbar ist.

    Ich weiß, mit Klasse und ID ist das unglücklich, aber ich mag nicht für jeden Menüpunkt Breite, Höhe und display separat definieren. Das ist bei allen gleich. Gibt es da eine elegantere Lösung?

    Ja:

      
    #menu a {  
      width:139px;  
      height:31px;  
      display:block;  
    }
    

    Wenn Du die Links in einem Div mit der ID menu zusammenpferchst, kannst Du sie auch alle in diesem Pferch antreffen. Die Klasse menu kannst Du dann löschen.

    netten Tag
    ^da Powl

    --
    ===============================
    powl.hat-gar-keine-homepage.de/
    1. Hallo!
      Danke für Deine Antwort :)

      Ich weiß nicht genau was den Opera stört, aber mit der Methode von 1ngo oder der von Andreas Kalt sollte es bei allen Browsern tun. Zudem vermeidet man das flackern, wenn die "hover"Grafik das erste Mal geladen wird und noch nicht im Cache verfügbar ist.

      Bei der Methode von Andreas Kalt tritt beim Opera der gleiche Effekt auf. Nach dem ersten Laden ist die Grafik noch nicht im Cache vorhanden. Beim Überfahren mit der Maus werden die hover-Grafik und der Link nicht angezeigt. Dabei wird aber die Grafik im Cache gespeichert. Beim zweiten Überfahren klappt es dann.

      Die Methode von 1ngo funktioniert im Opera wunderbar. Nur hab ich das Problem, dass meine Grafiken transparent sein müssen und somit zuviel von der hover-Grafik "durchscheint" :o(

      Hmm, muss ich mir nochmal Gedanken machen, wie ich das jetzt umsetze...

      Tschü

      1. Nachtrag zu meinem letzten Posting:

        Ja, ich Nuss habe mir Effekt 3 anstatt 4 angeschaut :o/