Nixwisser: Farbe (CSS) des Links auf die aktuelle Seite verändern

Beitrag lesen

ich bastele an einer einfachen und statischen Seite, alles in XHTML und alle Formatierungen via CSS. Ich hab 2 Navigationsleisten (<li>), und es wäre schön, wenn der Link auf die aktuelle Seite (d.h. "wo man gerade ist") eine andere Farbe hätte als die normalen Links.

Natürlich kann ich die Linkliste in der jeweiligen HTML-Datei verändern, aber wenn ich später einen Link hinzufügen will, muss ich dann alle Dateien einzeln korrigieren und kann nicht einfach überall die Linkliste ersetzen.

Sofern Du einen Apache benutzt, ist mod_include Dein Freund: Navigationsleiste auslagern und per include virtual in alle Seiten einbinden, in der Navigationsleistendatei bei jedem Menüpunkt die Variable DOCUMENT_URI mittels if prüfen und gegebenenfalls per echo ein zusätzliches "aktiv" in das class-Attribut des <li>-Elements einfügen. Das sieht dann ungefähr so aus:

<li class="navi<!--#if expr="$DOCUMENT_URI == /bla/fasel" --><!--#echo " aktiv" --><!--#endif -->"><a href …

(An der Pfadangabe musst Du eventuell etwas arbeiten, da es sein kann, dass er aus dem führenden Schrägstrich auf ein PCRE-Muster schließt. Vielleicht wird's mit /bla/fasel oder dergleichem etwas.)