Aktive Seite im Include Menü verändern
Thomas
- css
3 suit2 Beat0 Matthias Apsel
Hallo zusammen,
ich hab schon gesucht aber vielleicht drück ich mich ja falsch aus.
Ich habe auf eine Website das Menü mit Includes eingebunden. Gibt es da eine Möglichkeit, die jeweils aktive Seite im Menü farblich mit CSS zu ändern?
Oder falls nicht, was wäre denn die W3C Conformste Art und Weise dies zu lösen.
Vielen Dank, Gruß Thomas
Hallo zusammen,
ich hab schon gesucht aber vielleicht drück ich mich ja falsch aus.Ich habe auf eine Website das Menü mit Includes eingebunden. Gibt es da eine Möglichkeit, die jeweils aktive Seite im Menü farblich mit CSS zu ändern?
Unterscheide zwischen einem aktiv und derzeitig.
Aktive Links lassen sich mit der Pseudoklasse :active selektieren, das ist aber nicht das was du möchest. Du willst den derzeitigen Menüpunkt markieren.
Oder falls nicht, was wäre denn die W3C Conformste Art und Weise dies zu lösen.
Die beste Lösung ist, den Link einfach wegzulassen (nicht auf die derzeitige Seite verlinken). Dadurch ist der Menüpunkt eindeutig von den anderen unterscheidbar.
Die nächstschlechtere Lösung ist, das a-Element durch ein span-Element zu ersetzen - dadurch ist er ebenfalls nicht verlinkt aber durch das zusätzliche Element auch in unfähigen Browser genauso formatierbar.
Die schlechteste, aber leider übliche Lösung ist es dem derzeitigen Menüpunkt eine Klasse zu verpassen. Namentlich "cur" oder "current".
Ab jetzt wirds haarsträubend ;)
Eine Weiter Lösung ist es, das den Menüpunkt dessen href-Attribut sich mit der aktuellen Location deckt anders zu kennzeichnen. Das hat aber den Nachteil, dass es nicht in Browsern funktioniert die keinen Attributselektor kennen und den Nachteil, dass man jede potentielle Ressource im CSS erfassen muss - was auch nicht sinn der Sache ist.
@@suit:
nuqneH
Die beste Lösung ist, den Link einfach wegzulassen (nicht auf die derzeitige Seite verlinken).
Siehe Punkt 10 der zehn meist-missachteten Homepage-Design-Richtlinien [Nielsen]
Dadurch ist der Menüpunkt eindeutig von den anderen unterscheidbar.
Auch das, ja.
Die nächstschlechtere Lösung ist, das a-Element durch ein span-Element zu ersetzen
Halt, halt. Dazwischen kommt noch die Lösung, das a-Element zu lassen, aber ohne @href-Attribut.
dadurch ist er ebenfalls nicht verlinkt aber durch das zusätzliche Element auch in unfähigen Browser genauso formatierbar.
Gilt dann ebenfalls.
Qapla'
ich hab schon gesucht aber vielleicht drück ich mich ja falsch aus.
Garantiert:
Es gibt keine aktive Seite. Es gibt aktivierte Links. Du meinst die aktuell angezeigte Seite.
Ich habe auf eine Website das Menü mit Includes eingebunden. Gibt es da eine Möglichkeit, die jeweils aktive Seite im Menü farblich mit CSS zu ändern?
Ja. Entferne des href Attribut aus dem Link oder entferne das <a> Element ganz.
Oder falls nicht, was wäre denn die W3C Conformste Art und Weise dies zu lösen.
Keinen Link zu verwenden.
mfg Beat
Om nah hoo pez nyeetz, Thomas!
wenn du das Menü per include einbindest, bist du darauf angewiesen, die Auszeichnungssprachen html und css zu verlassen und dich einer Programmiersprache zuzuwenden. Ich habe vor einiger Zeit hier im Forum eine umfangreiche und ausführliche Hilfestellung dafür erhalten und mache das seitdem mit SSI.
Matthias