Problem mit a:active

Hi leutz

Ich hab ein Problem mit a:aktive. Und zwar auf dieser Seite sollte beim Menü eigentlich der aktive Menübotton auch so wie der hover aussehen. Was er aber auf mir unerklärlicher Weise nicht tut.

In der CSS hab ich dazu folgendes stehen:

a.button:hover, a.button:active { background:#7f8000 url(../img/button_hover.png); }
a.button:hover funktionirt ja, also müsste doch a:active auch funktionieren!..

nj…falls es damit was zu tun hat, die html sieht so aus:

<div id="nav"> <div><a class="button" href="index.php?option=home">Home</a></div> <div><a class="button" href="index.php?option=team">Team</a></div> <div><a class="button" href="index.php?option=spot">Spot</a></div> <div><a class="button" href="index.php?option=events">Events</a></div> <div><a class="button" href="index.php?option=pics">Pics</a></div> <div><a class="button" href="index.php?option=links">Links</a></div> <div><a class="button" href="http://www.unionried.at/index.php?menuid=34">Indoor</a></div> <div><a class="button" href="index.php?option=forum" style="border-bottom:solid 7px #7f8000;">Forum</a></div> </div>

Also wär super wenn mir wer sagen kann was ich hier ändern muss!

mfg

Moin,

dir ist jetzt aber schon klar, dass active nur so lange gilt, wie der Mauszeiger gedrückt ist und über dem Objekt? Also im Normalfall eh nur ein Bruchteil von Sekunden :wink: Ansonsten siehst du u.U. eine zusätzliche gestrichelte Box um das Objekt bei active.

Diese Box wird entweder durch den Browser oder Windows verursacht. Ich meine mich zu erinnern, dass wir das mal hatten irgendwo :wink: Aber ich kann dir nicht beantworten, wo das ausgestellt werden kann/muss. (ist eigentlich auch egal, da das eh dann vom jeweiligen Clienten abhängt)

Ansonsten sehe ich keine Unterschiede … wie siehts bei dir nicht aus, wie es aussehen sollte?

MfG
myPages

Ich hab jetzt eine Zeit herumgegoogelt und glaube das ich a:active etwas falsch verstanden habe.

Ich möchte das der Menüpunkt der gerade aktiv ist (also nicht der der gerade a:active entspricht, sonder der, dessen Inhalt gerade angezeigt wird) den a:hover Hintergrund bekommt.

Ich hoffe ich hab mich einigermaßen verständlich ausgedrückt^^ :ps:

Kann man dass auch mit CSS realisieren oder sollte ich dazu PHP verwenden?

Moin,

nein so etwas, geht nur mit PHP. Mit CSS ist sowas nicht möglich.

MfG
myPages

Und wie sollte ich dabei am besten vorgehen?

Einfach sowas in die art?

<a class="<? if ($option="news") {echo "button_active"} else{ echo "button"}; ?>" href="123" >

und dass dan bei jeden link einfügen… :ps:

Da ein Verweis zur aktuellen Seite (ohne zusätzlichen
Fragmentidentifizierer) ja ziemlich unsinnig ist, läßt du entweder
das komplette a-Element weg oder zumindest das href darin.
Das vermeidet dann auch Verwirrungen bei Anwendern.
Du kannst das a-Element etwa per PHP einfach durch em oder
strong oder sowas ersetzen, dann wird der Inhalt eben
entsprechend betont. Zusätzliche Dekoration kannst du ja ohnehin
dann mit CSS angeben.

Ich habe das bei meinen Projekten so gelöst, daß erstmal
analysiert wird, welcher Inhalt aktuell gerade dargestellt wird,
dann wird das passende Element um den Inhalt des jeweiligen
Menülistenpunktes gebastelt (a oder strong) und dann wird das
als Liste ausgegeben.