Louis: IE-Problem mit a:hover span

Hallo zusammen

Ich sitze nun schon ein Weilchen vor dem Bildschirm und wurde ganz ratlos. Ich finde und finde den Fehler nicht. Vielleicht kann mir jemand von Euch auf die Sprünge helfen...

Also ich hab ein Bildchen und man mit der Maus darüber fährt soll ein Text erscheinen. Da dieser CSS-Effekt im IE nur für Links funktioniert hab ich das Bild in einen Link getan.
Der Quelltext sieht dann so aus:

<div id="txt">
   blabla
   <a href="#" class="vorschau">
      <img class="bild1" src="bild.jpg">
 <span class="v1">blabla</span>
   </a>
</div>

und in der stylesheet:

#txt a.vorschau {
   text-decoration:none;
   display:block;
}
#txt a span {
   display:none;
}
#txt a:hover span {
   display:block;
   position:absolute;
   top:100px;
   left:100px;
}

Wenn Ihr das so anschaut, habt Ihr dann das Gefühl, das sollte funktionieren oder ist da ein Hacken dran (den ich trotz etlichen Suchen einfach nicht finde...)?

Liebe Grüsse
Louis

  1. Moin!

    Wenn Ihr das so anschaut, habt Ihr dann das Gefühl, das sollte funktionieren oder ist da ein Hacken dran (den ich trotz etlichen Suchen einfach nicht finde...)?

    Der Haken (nicht Hacken) dürfte der IE sein, der für sowas einfach zu blöde ist.

    Wenns in Opera 7 und/oder Mozilla bzw. Firefox funktioniert, hast du richtig gedacht, und du kannst dich in die lange Schlage derer einreihen, die darauf warten, dass der Marktführer entweder das Zeitliche segnet, oder das längst fällige Update rausbringt. Du solltest dich im zweiten Fall allerdings damit anfreunden, dann auch gleich dein Windows upzudaten - als eigenständige Downloadversion wird es den IE 7 nach Angaben von Microsoft nicht geben.

    - Sven Rautenberg

    1. Hallo Sven

      Der Haken (nicht Hacken) dürfte der IE sein, der für sowas einfach zu blöde ist.

      Ui das da werd ich mein Wörterbuch durchhacken...

      Wenns in Opera 7 und/oder Mozilla bzw. Firefox funktioniert,

      Ja, das hab ich vergessen zu sagen, in den beiden funktionierts.

      Aber prinzipiell funktioniert ja a:hover span  und so im IE.
      Kann es daran liegen, dass man nun über ein Bild fahren soll anstatt über einen Text? (und dass hier der IE aussteigt)

      hast du richtig gedacht, und du kannst dich in die lange Schlage derer einreihen, die darauf warten, dass der Marktführer entweder das Zeitliche segnet, oder das längst fällige Update rausbringt. Du solltest dich im zweiten Fall allerdings damit anfreunden, dann auch gleich dein Windows upzudaten - als eigenständige Downloadversion wird es den IE 7 nach Angaben von Microsoft nicht geben.

      Oder man soll die Leute dazu bringen einen vernünftigen Browser zu installieren. Der IE hängt mir langsam definitv zum Hals raus... Und der neue Opera 7.5 ist so gut; man müsste mehr Werbung für Opera machen...

      Zurück zum Thema: soll ich jetzt also wirklich Javascript für den Käse nehmen?

      Gruss
      Louis

      1. Moin!

        Aber prinzipiell funktioniert ja a:hover span  und so im IE.

        Tut es das? Ich habe hinsichtlich der CSS-Effekte im IE abgespeichert, dass der nur ordentlich hovert, wenn a:hover der letzte Selektor ist.

        Wobei: Ich muß mich korrigieren, "a:hover img" erlaubt beispielsweise das Ändern der Hintergrundfarbe eines Bildes innerhalb eines Links auch im IE beim Hovern.

        Aber vermutlich keine Änderung der display-Eigenschaft.

        Kann es daran liegen, dass man nun über ein Bild fahren soll anstatt über einen Text? (und dass hier der IE aussteigt)

        Woran es liegt, weiß Herr Gates ... vermutlich auch nicht.

        Zurück zum Thema: soll ich jetzt also wirklich Javascript für den Käse nehmen?

        Farbänderungen sind vielleicht der erste Schritt. Es gibt schließlich "durchsichtig" als Farbe. Der zweite wäre, stattdessen visibility zu ändern.

        - Sven Rautenberg

        1. Hallo Sven

          Aber prinzipiell funktioniert ja a:hover span  und so im IE.

          Tut es das? Ich habe hinsichtlich der CSS-Effekte im IE abgespeichert, dass der nur ordentlich hovert, wenn a:hover der letzte Selektor ist.

          Wobei: Ich muß mich korrigieren, "a:hover img" erlaubt beispielsweise das Ändern der Hintergrundfarbe eines Bildes innerhalb eines Links auch im IE beim Hovern.

          Aber vermutlich keine Änderung der display-Eigenschaft.

          Irgendwie kann ers halt doch, siehe oben, aber dem IE muss man halt alles zweimal sagen...

          Merci fürs Helfen

          Gruss
          Louis

    1. Danke Avalon

      http://www.meyerweb.com/eric/css/edge/popups/demo.html

      Anhand dieses Links hatte ich vor einiger Zeit sowas gebastelt (was auch geklappt hat). Deshalb bin ich auch so verwirrt, dass was ich jetzt gemacht habe, nicht funktioniert.
      Was ich jetzt mache, ist ja nur ganz leicht anders und ich dachte, dass entweder der IE das jetzt so nicht mehr will (z.B. hover-Effekt beim Übers-Bild-Fahren) oder ich hab irgend eine Kleinigkeit falsch gemacht und sehe den Wald vor lauter Bäume nicht mehr.

      Ich werde mal Maxx's Vorschlag ausprobieren.

      Gruss
      Louis

  2. Hallo Louis,

    Also ich hab ein Bildchen und man mit der Maus darüber fährt soll ein Text erscheinen. Da dieser CSS-Effekt im IE nur für Links funktioniert hab ich das Bild in einen Link getan.

    Der Quelltext sieht dann so aus:

    Das Ganze erscheint mir reichlich ineffizient.
    Ein vernünftiger Browser sollte folgendes korrekt interpretieren:

    a.dieKlasse         {color:#000000; text-decoration:none;}

    a.dieKlasse         span {display:none;}
      a.dieKlasse:hover   span {display:block;}

    <a href="#" class="dieKlasse">
         <img ...><span>Der Text</span>
      </a>

    Nicht so der IE. Ihm fehlt noch ein Anstoß das Bild zu zeichnen.

    a.dieKlasse:hover   {border:none;} // oder Hintergrund, irgend etwas,
                                         // was ein Neuzeichnen der Region auslöst.

    HTH

    Jochen

    1. hi,

      Nicht so der IE. Ihm fehlt noch ein Anstoß das Bild zu zeichnen.

      a.dieKlasse:hover   {border:none;} // oder Hintergrund, irgend etwas,
                                           // was ein Neuzeichnen der Region auslöst.

      ja, diese erfahrung habe ich auch bereits gemacht.
      bei mir half damals eine einfach änderung der schriftfarbe, um ihn zum "neu zeichnen" zu bewegen - und lustiger weise ging es sogar auch dann, wenn ich nur color:#xxyyzz durch die kurz-schreibweise color:#xyz ersetzt habe ...

      IE - muss man nicht verstehen.

      gruss,
      wahsaga

      --
      http://wazgnuks.net/ - back from the dead
      1. Hallo wahsaga

        IE - muss man nicht verstehen.

        Lieber eine harte Wand für den Kopf. (Leider hab ich ja nur meinen zu Verfügung für solche Aktionen)
        Wer programmiert eigentlich solchen Schwachsinn?[*]

        Na dann, schönen Tag noch.
        Louis

        [*] ich möchte damit nicht sagen, dass ich das besser könnte, aber wieso können es andere mit geringeren Mittel so viel mal besser...?

        1. hi,

          IE - muss man nicht verstehen.

          Lieber eine harte Wand für den Kopf. (Leider hab ich ja nur meinen zu Verfügung für solche Aktionen)

          ja, beim arbeiten mit dem IE möchte man oftmals den kopf vor die wand schlagen - allerdings in den meisten fällen nicht den eigenen.

          gruss,
          wahsaga

          --
          http://wazgnuks.net/ - back from the dead
    2. Vielen vielen Dank Jochen

      Das funktioniert tatsächlich so mit dem
       a.dieKlasse:hover   {border:none;} !
      Das war ja eine richtige Überraschung als es dann der IE da mitmachte! (Darauf wäre ich nie gekommen)
      Also ich wüsste wirklich nicht, was ich ohne dieses Forum machen sollte... Der IE ist ja zu bescheuert!

      Also nochmals vielen Dank

      Louis