Michael M.: kniffliger hover effect

Hallo,

gibt es einen Weg, wie man mit css nur das aktuelle element unter dem mauszeiger mit css im erscheinungsbild aendern kann. Ich wollte einfach das element umrahmen ueber dem sich gerade der mauszeiger befindet. Also dachte ich mir es musste so etwas tun: *:hover {border: 1px solid red;}
Aber da werden alle elemente umrahmt, die mit dem mauszeiger "ueberfahren" werden, also auch dem einzelnen element umliegenden element. Gibt es eine Moeglichkeit nur das aktuell unterlegt element mit css zu beschreiben?

Waere sehr dankbar fuer Hilfe.

  1. Hi,

    gibt es einen Weg, wie man mit css nur das aktuelle element unter dem mauszeiger mit css im erscheinungsbild aendern kann. Ich wollte einfach das element umrahmen ueber dem sich gerade der mauszeiger befindet. Also dachte ich mir es musste so etwas tun: *:hover {border: 1px solid red;}
    Aber da werden alle elemente umrahmt, die mit dem mauszeiger "ueberfahren" werden, also auch dem einzelnen element umliegenden element. Gibt es eine Moeglichkeit nur das aktuell unterlegt element mit css zu beschreiben?

    Vermutlich nicht.
    Mit CSS ist es m.W. nicht möglich, ein Element anhand seiner Nachfahren zu selektieren - Du willst im Grunde das Element selektieren, für das :hover gilt und für das es kein Nachfahrenelement gibt, für das auch :hover gilt.

    cu,
    Andreas

    --
    Warum nennt sich Andreas hier MudGuard?
    O o ostern ...
    Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.
  2. Om nah hoo pez nyeetz, Michael M.!

    Möglicherweise leistet *:hover:target das Gewünschte.

    Das bedeutet jedoch jede Menge zusätzliche Linkelemente, die auf sich selbst verweisen und ist somit keine optimale Lösung.

    Auch eine suboptimale, weil aufwändige Lösung wäre, den gewünschten Elementen eine ID zu verpassen und sie im CSS explizit anzusprechen.

    Matthias

    --
    http://www.billiger-im-urlaub.de/kreis_sw.gif
    1. Hi,

      _Möglicherweise_ leistet *:hover:target das Gewünschte.

      Das bedeutet jedoch jede Menge zusätzliche Linkelemente, die auf sich selbst verweisen und ist somit keine optimale Lösung.

      Wie soll das helfen? :target würde ja erst gelten, nachdem die Links auch angeklickt wurden.

      cu,
      Andreas

      --
      Warum nennt sich Andreas hier MudGuard?
      O o ostern ...
      Fachfragen per Mail sind frech, werden ignoriert. Das Forum existiert.
      1. Om nah hoo pez nyeetz, MudGuard!

        Wie soll das helfen? :target würde ja erst gelten, nachdem die Links auch angeklickt wurden.

        korrekt, hab ich übersehen. Dennoch bleibt :target eine Möglichkeit über Verwandtschaft im Sinne des DOM hinweg zu selektieren.

        Matthias

        --
        http://www.billiger-im-urlaub.de/kreis_sw.gif
    2. Om nah hoo pez nyeetz, apsel!

      Auch eine suboptimale, weil aufwändige Lösung wäre, den gewünschten Elementen eine ID zu verpassen und sie im CSS explizit anzusprechen.

      eine Klasse tuts auch.

      Matthias

      --
      http://www.billiger-im-urlaub.de/kreis_sw.gif
    3. @@apsel:

      nuqneH

      Auch eine suboptimale, weil aufwändige Lösung wäre, den gewünschten Elementen eine ID zu verpassen und sie im CSS explizit anzusprechen.

      Die Lösung ist nicht suboptimal, sondern keine.

      So wie ich es verstanden habe, soll bei <p>foo <em>bar</em> baz<p> die 'p'-Box den Rahmen haben, wenn man mit dem Mauscursor über "foo " oder " baz" ist; nicht aber, wenn man über "bar" ist, sondern dann nur die 'em'-Box. Das ist auch über IDs nicht zu erreichen, AFAIS.

      Qapla'

      --
      Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
      (Mark Twain)
  3. Grüße,
    ist es für "enduser" oder nur für dich in der entwicklungsphase?
    im letzteren Fall gibt es sehr einfache Lösung.
    MFG
    bleicher

    --
    __________________________-

    FirefoxMyth
    1. Es muss leider fuer enduser sein,

      sonst koennte ich auch ein einfaches javascript nehmen, es sollte lieber css basiert sein, firefox 3.5 und hoeher wuerden ausreichen. Firefox hat auch ein paar netter Zusatzerweiterungen hinsichtlich css pseudo-elementen , aber entwerder ich habe noch nicht die richtige Kombination oder es ist schlicht unmoeglich ;-(

      https://developer.mozilla.org/en/CSS_Reference
      https://developer.mozilla.org/en/CSS_Reference/Mozilla_Extensions

      Grüße,
      ist es für "enduser" oder nur für dich in der entwicklungsphase?
      im letzteren Fall gibt es sehr einfache Lösung.
      MFG
      bleicher

      1. @@Michael M.:

        nuqneH

        oder es ist schlicht unmoeglich ;-(

        Nichts ist unmöglich – Firebug!

        Wie der das schafft, hab ich aber auch noch nicht rausbekommen. Is there only XUL?

        Qapla'

        --
        Gut sein ist edel. Andere lehren, gut zu sein, ist noch edler. Und einfacher.
        (Mark Twain)
        1. Nun ja,

          Firebug wird es wahrscheinlich ueber priviligiertes javascript loesen mit einem einfachen eventListener. Ich wollte aber eher auf eine css Loesung setzten, da nicht unbedingt alles mit script geloest werden muss.

        2. Wie der das schafft, hab ich aber auch noch nicht rausbekommen.

          Habe mal kurz nachgeschaut, wie vermutet:
          addEventListener("mouseover",.... )
          addEventListener("mousedown",.... )