MudGuard: "display:none" und "display:block" per Mausklick tauschen

Beitrag lesen

Hi,

a:active gilt nur während des Klicks (also vom Runterdrücken der Maustaste bis zum Loslassen.
Richtig, allerdings würde es weiter gelten, wenn der "Klickeffekt" in einem anderen Frame ausgelöst und der Focus auf diesen anderen Frame gesetzt wird. Kommt als Aufgabenstellung nicht in Frage.

Nein.

Nur weil der IE das falsch interpretiert und die Regeln, die bei :active angegeben wurden, auch bei :focus noch anwendet (und dafür :focus komplett ignoriert), ist das nicht richtig. Es gibt Browser, die das richtig machen (Mozilla z.B.)

Siehe auch http://www.w3.org/TR/REC-CSS2/selector.html#dynamic-pseudo-classes, wo es heißt:
-  The :active pseudo-class applies while an element is being activated by the user. For example, between the times the user presses the mouse button and releases it.
-  The :focus pseudo-class applies while an element has the focus (accepts keyboard events or other forms of text input).

Da steht nichts davon, daß das von Frames oder irgend was anderem abhängt.
Du schreibst ja selbst im zweiten Teil Deines Satzes von "Focus", aber der hat wenig mit :active zu tun.

Selbstverständlich könnte man auch auf irgendeine serverseitige Lösung ausweichen. Aber auch das entspricht nicht meiner Aufgabenstellung: im Endeffekt soll auf der ganzen Seite nichts andres stehen als CSS und HTML. Daß das schwierig einzulösen ist, weiß ich, daß es unmöglich sein soll, weigere ich mich noch, anzunehmen.

Du willst eine über einen Hover-, Activ(at)e- oder Focus-Effekt hinausgehende Zustandsänderung durchführen.
Welcher Teil von HTML oder CSS erlaubt eine solche dauerhafte Zustandsänderung?
Ich kenne keinen. Und ich meine, daß ich HTML und CSS ganz gut kenne...

cu,
Andreas

--
Der Optimist: Das Glas  ist halbvoll.  - Der Pessimist: Das Glas ist halbleer. - Der Ingenieur: Das Glas ist doppelt so groß wie nötig.
http://mud-guard.de/? http://www.andreas-waechter.de/ http://www.helpers.de/