Enrico: "current"-Status bei Links

Beitrag lesen

Grüße zurück, Bleicher,

ohne details zu kennen, schwer zu sagen, es hört sich aber merh nach css als php problem an

Hier - auszugsweise - die Definition zweier Links:

a.Rechtliches:hover,
   a.Rechtliches:active
   {
      background-position: 0px -39px;
   }

a.Dartsport:focus,
   a.Rechtliches:focus
   {
      outline: none;
   }

a.Dartsport:visited,
   a.Rechtliches:visited
   {
      background-position: 0px 0px;
   }

a.Dartsport
   {
      background: url("../Grafiken/Menuepunkte/Dartsport.png") no-repeat;
      display:    block;
      height:     39px;
      left:       606px;
      position:   absolute;
      bottom:     2px;
      width:      100px;
   }

a.Rechtliches
   {
      background: url("../Grafiken/Menuepunkte/Rechtliches.png") no-repeat;
      display:    block;
      height:     39px;
      left:       738px;
      position:   absolute;
      bottom:     2px;
      width:      114px;
   }

die notwendigkeit 13 links einzeln zu positionieren, spricht übrigens für schlechte design-grundidee

Wenn Du wüsstest, wie lange ich mir den Kopf zermartert habe, für unseren Dartverein ein passendes Konzept zu finden ;-)

Letztendlich bin ich bei einer grünen Schreibtafel gelandet, die ja auch in Kneipen zum Anschreiben der Stände verwendet wird, als Hintergrund dunkle, gealtete Holzplanken. Am oberen Bildschirmrand befinden sich 6 Links, am unteren Bildschirmrand die verbleibenden 7, von der Tafel sieht man nur den linken und rechten Rand nebst grüner Füllung.

Ich habe die oberen und unteren Links jeweils mit gleichem Abstand zueinander ausgerichtet und da die Links aus reinen grafischen Schriftzügen bestehen blieb mir nichts anderes übrig, als diese einzeln zu positionieren.

Ok, ich hätte wohl auch mit einer Liste arbeiten können und "padding", aber das will ich jetzt (eigentlich) nicht mehr umschmeisen, weil es funktioniert.

So weit der Ausflug in unser Design.

Die Links selber sind folgendermaßen aufgebaut - wie üblich:

<a class="Dartsport" href="Index_3.php?Auswahl_Menue=Dartsport"></a>
   <a class="Rechtliches" href="Index_3.php?Auswahl_Menue=Rechtliches"></a>

"onmouseover" und "onmouseout" über css-Definitionen klappen einwandfrei, aber current wird ja direkt im Tag notiert:

<a class="Dartsport" href="Index_3.php?Auswahl_Menue=Dartsport" current></a>

Die Abfrage nach dem angeklickten Link erfolgt wie folgt:

<?php

if (isset($_GET["Auswahl_Menue"]))
      {
         $Auswahl_Menue = $_GET["Auswahl_Menue"];
      }
      else
      {
         $Auswahl_Menue = "Erster Aufruf";
      }

?>

Dies war aber nur ein Test, ob es funktioniert, die letztendliche Funktionalität wird noch eingebaut.

Mein Problem ist nun, wie ich 12 Links normal und den angeklickten Link als "current" darstellen kann, ohne den besagten riesigen "switch" einbauen zu müssen:

<?php

if (isset($_GET["Auswahl_Menue"]))
      {
         $Auswahl_Menue = $_GET["Auswahl_Menue"];
      }
      else
      {
         $Auswahl_Menue = "Neuigkeiten";
      }

$Menuepunkte = "";

switch ($Auswahl_Menue)
      {
         case "Neuigkeiten":
         {
            $Menuepunkte = '<a class="Neuigkeiten" current></a>';
            $Menuepunkte .= '<a class="Ankuendigungen" href="Index_3.php?Auswahl_Menue=Ankuendigungen"></a>';
            $Menuepunkte .= '<a class="Vereinsheim" href="Index_3.php?Auswahl_Menue=Vereinsheim"></a>';
            ...
            break;
         }

case "Ankuendigungen":
         {
            $Menuepunkte = '<a class="Neuigkeiten" href="Index_3.php?Auswahl_Menue=Neuigkeiten"></a>';
            $Menuepunkte .= '<a class="Ankuendigungen" current></a>';
            $Menuepunkte .= '<a class="Vereinsheim" href="Index_3.php?Auswahl_Menue=Vereinsheim"></a>';
            ...
            break;
         }

case ...
      }

?>

Und diesen "switch" möchte ich, sofern möglich, vermeiden, weil ich hier, jetzt nur die Aufbauten der Links gerechnet, 169 Zeilen hätte.

Gruß,
Enrico