Mit CSS jede <li> einzeln ansprechen

Status
Nicht offen für weitere Antworten.

babone

Mitglied
Hallo,

ich möchte das in meiner menü die hintergrund farbe des jeweiligen Buttons auf der man gerade ist, anders angezeigt wird(schwieriger satz ;-)). Dafür gibt es die Pseudo klasse active aber die funktioniert bei Firefox nicht und durch das, das ich zwei menüs habe will Ich natürlich auch die zweite ansprechen können. Wie kann ich jede einzelne <li> ansprechen? Mit ID komme ich irgendwie nicht weiter oder muss ich javascript dafür verwenden hmm...
So sieht mein normaler Menü aus! Hoffe das mir jemand da helfen kann. danke

HTML:
<div class="menu2">
<ul>
<li><a href="Book.html">&nbsp;Booking</a></li>
<li><a href="Bdesign.html">&nbsp;Design</a></li>
<li><a href="News.html">&nbsp;Newsletter</a></li>
</ul>
</div>

Code:
.menu2
{
 padding: 4px;
 margin: 4px;
 margin-top: 1px;
 width:250px;
 float: left;

}
.menu2 ul
{
  list-style: none;
  padding: 0px;
  margin: 0px;
  text-align: left;
}
.menu2 li
{
    font-size:8px;
	letter-spacing:0.4em;
	list-style: none;
	padding-top:4px;
	padding-left:0px;
	margin-left:0px;
	display: block;
	height:13px;
}
.menu2 a
{
display: block;
border-left: 7px solid #a1a1a1;
color: #ffffff;
font-weight:bold;
text-decoration: none;
width: 250px;
}
.menu2 a:hover
{
display: block;
text-decoration: none;
color: #fff;
font-weight:bold;
background-color: #fbaa19;
border-left: 7px solid #666666;
}
.
 
Zuletzt bearbeitet:
Es könnte für den Link der aktuell geöffneten Seite eine CSS-Klasse (in diesem Beispiel .active) oder ID mit den gewünschten CSS-Formatierungen bestimmt werden:

CSS:
.menu2 a:link.active, .menu2 a:visited.active {
/* CSS-Formatierungen */
}
HTML:
<!-- Book.html -->
<div class="menu2">
 <ul>
  <li><a class="active" href="Book.html">&nbsp;Booking</a></li>
  <li><a href="Bdesign.html">&nbsp;Design</a></li>
  <li><a href="News.html">&nbsp;Newsletter</a></li>
 </ul>
</div>

<!-- Bdesign.html -->
<div class="menu2">
 <ul>
  <li><a href="Book.html">&nbsp;Booking</a></li>
  <li><a class="active" href="Bdesign.html">&nbsp;Design</a></li>
  <li><a href="News.html">&nbsp;Newsletter</a></li>
 </ul>
</div>

<!-- News.html -->
<div class="menu2">
 <ul>
  <li><a href="Book.html">&nbsp;Booking</a></li>
  <li><a href="Bdesign.html">&nbsp;Design</a></li>
  <li><a class="active" href="News.html">&nbsp;Newsletter</a></li>
 </ul>
</div>
 
Zudem sind die geschützten Leerzeichen gar nicht mehr nötig; regle das einfach auch mit CSS, etwa:
Code:
.menu2 a {
	padding-left: 1ex;
}
 
Danke vielmals! Es klappt wunderbar...
Danke Gumbo!
Also Maik würde bei einer Skala von 1 bis 10, 15 Punkte kriegen.

Total schnelle Antwort, präzise und genau auf'n Punkt

Danke
Naci
 
Status
Nicht offen für weitere Antworten.
Zurück