zurück zur Startseite
  


Zurück XHTMLforum > (X)HTML und CSS > CSS
Seite neu laden ausgewählter link aktiv, die 180te

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 18.07.2010, 10:08
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 17.07.2010
Beiträge: 3
tourist befindet sich auf einem aufstrebenden Ast
Standard ausgewählter link aktiv, die 180te

Liebe Gemeinde,

das Thema wurde schon mehrfach behandelt, die Lösung habe ich für mich leider immer noch nicht gefunden.

Ich habe eine Navigation mit folgendem Aufbau:

CSS
Code:
ul#nav {
	margin: 0;
	list-style: none;	
	background-image: url(navOff.gif);
	}

ul#nav li a {				
	display: block;
   	width: 153px;
	padding: 0 25px;
	text-decoration:none;
	}

ul#nav li a:link { 
	color: #dedede;
	}
	
ul#nav li a:visited { 
	color: #dedede; 
	}

ul#nav li a:hover { 
	color: #F90;
        background: url(navOn.gif) no-repeat; 
        }

ul#nav li a:focus { 
	color: #F90;
        background: url(navOn.gif) no-repeat; 
        }
HTML
HTML-Code:
<ul id="nav">
          <li><a id="link1" href="#">LINK1</a></li>
          <li><a id="link2" href="#">LINK2</a></li>
          <li><a id="link3" href="#">LINK3</a></li>
          <li><a id="link4" href="#">LINK4</a></li>
</ul>
Jetzt würde ich gerne im "head" jeder Seite über die link-id die aktive Seite in der Navigation hervorheben, z.B. so:
Code:
<style type="text/css"> 

/* nav active */
#link2 { 
	color: #F90; !important
	text-decoration: none;
	background-image:url(_gfx/bg_navLevel1On.gif) no-repeat;
	}
</style>
Geht aber nicht. Damit kriege ich die Standardlinkfarbe nicht "überschrieben". Findet irgendjemand einen Denkfehler, oder hat eine Idee, wie man es anders lösen könnte?

PS: Die Lösung über eine extra Klasse (z.B. "current"), die man im body an den link hängt, kenne ich. Ich würde aber wie gesagt gerne im head der jeweiligen Seite den aktiven Link kennzeichnen.

Vielen Dank und Grüße
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 18.07.2010, 13:21
Benutzerbild von heiko_rs
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 18.09.2005
Ort: Berlin
Beiträge: 9.848
heiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblickheiko_rs ist ein wunderbarer Anblick
Standard

Links sollen nie auf sich selber zeigen, also a raus und strong rein.
__________________
Wer keinen Link auf seine problembehaftete Seite posten kann, weil diese noch nicht online ist: Testcase bauen, online stellen, Link posten.
Internet-Grundregel: Unbekannte Begriffe googeln! (Erspart 99% aller Nachfragen.)
Mit Zitat antworten
Sponsored Links
  #3 (permalink)  
Alt 18.07.2010, 20:52
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 17.07.2010
Beiträge: 3
tourist befindet sich auf einem aufstrebenden Ast
Standard

Hallo Heiko,

vielen Dank für die Antwort, das geht ja rasend schnell!

Wenn ich Dich richtig verstanden habe, soll die aktuelle Seite keinen link bekommen (wobei ich das nicht unpraktisch finde). Auf Seite 2 wird also aus

Code:
<li><a id="link2" href="#">LINK2</a></li>
folgendes:

Code:
<li><strong>LINK2</strong></li>
inklusive entsprechendem styling, richtig?

Das löst aber nicht mein eigentliches Problem. Ich würde die Kennzeichnung des aktiven Links gerne ohne Änderung innerhalb der ul-Liste lösen, sondern durch eine zusätzliche css-Angabe im jeweiligen Seiten-head (wg. vieler Einzelseiten und Template; Änderungen in der Navigation müsste ich dann nur im Template vornehmen).

Danke und Grüße
Mit Zitat antworten
  #4 (permalink)  
Alt 18.07.2010, 21:03
Benutzerbild von Thielo
Web Ninja
XHTMLforum-Kenner
 
Registriert seit: 17.09.2009
Ort: Stuttgart oder so
Beiträge: 3.372
Thielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein LichtblickThielo ist ein Lichtblick
Standard

gib dem body tag eine eindeutige id die auf den jeweiligen menüpunkt verweist. :P
__________________
Hier ein immer gültiges Statement: Überarbeite deine Code, lerne die Grundlagen, widersprich mir nicht, wehre dich nicht, ich habe Recht, wir sind Lolgion, wir sind viele.. potato...
All meine Angaben sind ohne Gewähr, es könnte also trotz meiner Unfehlbarkeit dazu kommen dass ich falsch liege

www.richard-thiel.de | Müssen Websiten überall gleich ausschauen?
Mit Zitat antworten
  #5 (permalink)  
Alt 19.07.2010, 09:58
Neuer Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 17.07.2010
Beiträge: 3
tourist befindet sich auf einem aufstrebenden Ast
Standard

Vielen Dank für den Tip! Auch eine elegante Methode, bei vielen Links Navigationspunkten hat man allerdings ziemlich viele ids in der css-Datei.
Da ist mir die separate Auszeichnung des aktiven Links über eine zusätzliche "current"-Klasse fast lieber.
Ausserdem müsste ich dafür auf jeder Seite das body-tag ändern, was sich mit meinem Template beisst.

Also schon sehr dicht dran, aber noch nicht ganz da (trotzdem danke!)...

Ich verstehe allerdings nicht, warum es so schwer ist, mit zusätzlichen style-Angaben im Seiten-head die allgemeinen Angaben zu links in der externen css-Datei zu überschreiben. Das muss doch möglich sein?!

Edit: noch ein kleiner Nachtrag.
Wenn ich es richtig gesehen habe, tritt das Problem auch nur bei Listen auf. Würde ich die Links einfach hintereinander schreiben, liesse sich der aktive Link über eine zusätzliche Angabe im Head umfärben.

Geändert von tourist (19.07.2010 um 10:01 Uhr)
Mit Zitat antworten
  #6 (permalink)  
Alt 19.07.2010, 11:29
Benutzerbild von nevermind
Trollflüsterer
XHTMLforum-Kenner
 
Registriert seit: 29.08.2005
Ort: Bietigheim-Bissingen
Beiträge: 2.215
nevermind ist ein Lichtblicknevermind ist ein Lichtblicknevermind ist ein Lichtblicknevermind ist ein Lichtblicknevermind ist ein Lichtblicknevermind ist ein Lichtblick
Standard

Du kannst php nutzen?
http://xhtmlforum.de/61139-bitte-um-...tml#post466220
__________________
Gruß Roman // ngkreativ.de - Webdesign & Motorradumbau
Mit Zitat antworten
  #7 (permalink)  
Alt 19.07.2010, 12:27
Erfahrener Benutzer
XHTMLforum-Kenner
 
Registriert seit: 28.01.2005
Beiträge: 11.775
fricca kann auf vieles stolz seinfricca kann auf vieles stolz seinfricca kann auf vieles stolz seinfricca kann auf vieles stolz seinfricca kann auf vieles stolz seinfricca kann auf vieles stolz seinfricca kann auf vieles stolz seinfricca kann auf vieles stolz sein
Standard

Zitat:
Zitat von tourist Beitrag anzeigen
Ich verstehe allerdings nicht, warum es so schwer ist, mit zusätzlichen style-Angaben im Seiten-head die allgemeinen Angaben zu links in der externen css-Datei zu überschreiben. Das muss doch möglich sein?!
Sicher ist das möglich. Lies doch mal was zur "Spezifität von Selektoren" -- und validier dein Stylesheet.

edit:
Zitat:
Wenn ich es richtig gesehen habe, tritt das Problem auch nur bei Listen auf. Würde ich die Links einfach hintereinander schreiben, liesse sich der aktive Link über eine zusätzliche Angabe im Head umfärben.
Nein, sicher ist nicht die sinnvolle Auszeichnung eines Menüs mit einer Liste die Ursache deines Problems.

Geändert von fricca (19.07.2010 um 12:33 Uhr)
Mit Zitat antworten
Antwort

Stichwörter
aktiv, css, link

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
clearen im 21 Jhr. Muamicus CSS 23 14.12.2010 20:50
ul richtig zentrieren Muamicus CSS 23 14.12.2010 19:28
Definitionsliste in einer Floatumgebung *pi CSS 11 07.01.2009 19:34
Ständig wechselnde Bilder, Werbung Vybsi (X)HTML 17 25.01.2008 00:00
CSS Navigationsproblem thesecretboy CSS 0 12.04.2007 09:12


Alle Zeitangaben in WEZ +2. Es ist jetzt 11:39 Uhr.