Torsten: td:hover leider nicht im IE

Hallo,

Ich habe eine Tabelle in der ich bestimmte Zellen beim überqueren mit der Mouse aufleuchten lassen will (gefällt mir einfach sehr gut). Dies habe ich mit CSS versucht zu lösen(td:hover). Dummerweise funktioniert dies nicht im IE, wie so manches nicht. Wieso eigentlich nicht? Alternativ habe ich gesehn, kann man sowas auch mit Javascript machen:
...
<td onMouseOver="this.style.backgroundColor = '#8b0000';" onMouseOut="this.style.backgroundColor = 'Transparent';">...</td>
...
jetzt stellen sich für mich zwei Fragen:
1.) Gibt es eine Möglichkeit dies ohne JS zu realisieren?
2.) Falls nicht, müsste ich ja in jedes td-Element die Event-Handler einbauen. Kann man das nicht eleganter lösen, z.B. eine Funktion definieren und diese dann für bestimmte td-Elemente ausführen?
Ich kenn mich mit JS noch nicht all zu gut aus, von daher würde ich mich über ein kleines Codebeispiel sehr freuen.

Gruß
Torsten

  1. Hallo Torsten,

    (td:hover). Dummerweise funktioniert dies nicht im IE, wie so manches nicht. Wieso eigentlich nicht?

    http://support.microsoft.com/oas/default.aspx?ln=de&prid=3874&gprid=194968 ;-)

    Alternativ habe ich gesehn, kann man sowas auch mit Javascript machen:
    1.) Gibt es eine Möglichkeit dies ohne JS zu realisieren?

    Nein.

    2.) Falls nicht, müsste ich ja in jedes td-Element die Event-Handler einbauen.

    Nein.

    Kann man das nicht eleganter lösen,

    http://www.xs4all.nl/~peterned/csshover.html
     http://4umi.com/web/css/hover.htm
     http://news.css-technik.de/comments/375_0_1_0_C/

    Grüße,
     Roland

  2. Hallo Torsten,

    Ich habe eine Tabelle in der ich bestimmte Zellen beim überqueren mit der Mouse aufleuchten lassen will (gefällt mir einfach sehr gut). Dies habe ich mit CSS versucht zu lösen(td:hover). Dummerweise funktioniert dies nicht im IE, wie so manches nicht. Wieso eigentlich nicht? Alternativ habe ich gesehn, kann man sowas auch mit Javascript machen:

    jetzt stellen sich für mich zwei Fragen:
    1.) Gibt es eine Möglichkeit dies ohne JS zu realisieren?

    Geht doch, wenn du in jede zelle ein A-Element mit display:block, 100% Höhe und Weite setzt

    Gruß Gernot

    <html>
    <head>
    <title></title>
    <meta name="author" content="Gernot Back">
    <meta name="generator" content="Ulli Meybohms HTML EDITOR">
    <style type="text/css">
    <!--
    html, body {
      margin:0px;
      padding:0px;
    }

    table {
      width:100%;
      height:100%;
    }

    td a {
      width:100%;
      height:100%;
      background-color:#ff0000;
      display:block;
    }

    td a:hover {
      background-color:#00ff00;
    }
    -->
    </style>
    </head>
    <body>
    <table cellspacing="0" cellpadding="0">
    <tr>
     <td><a href="#1"></a></td>
     <td><a href="#2"></a></td>
    </tr>
    <tr>
     <td><a href="#3"></a></td>
     <td><a href="#4"></a></td>
    </tr>
    </table>
    </body>
    </html>

    1. Hallo Gernot,

      vielen Dank für dein Code-Beispiel.
      Jetzt brauch ich mich auch nicht mit JS rum zu ärgern.

      Gruß
      Torsten

      1. Hi,

        Jetzt brauch ich mich auch nicht mit JS rum zu ärgern.

        Dafür ärgern sich dann die User, wenn sie auf gefakte Links klicken?

        Gutes Tauschgeschäft! >;->

        Gruß, Cybaer

        --
        Hinweis an Fragesteller: Fremde haben ihre Freizeit geopfert, um Dir zu helfen. Helfe Du auch im Archiv Suchenden: Beende deinen Thread mit einem "Hat geholfen" oder "Hat nicht geholfen"!