Auge: CSS first-child

Beitrag lesen

Hallo

… Eigentlich hab ich einen ganz simplen Aufbau der wie folgt aussieht:

… und falsch ist.

Einel Liste ul (oder auch ol für eine geordnete Liste) darf selbst nur li als Kindelemente haben. Du hast direkt Links a als Kindelemente von ul (und dort herinnen die li). Die Browser sehen zwar gnädig über solche Fehler hinweg. da sie das aber nicht alle auf die selbe Art tun, also kein Verlass auf ein gleichartiges Verhalten ist, ist die richtige Verwendung der Elemente Pflicht.

Die korrekte Verschachtelung (ausschnittsweise) ist folgende:

<nav>
 <ul>
  <li><a href="">Punkt 1</a></li>
  <li>Punkt 3
   <ul>
    <li><a href="#">Punkt 3.1</a></li>
   </ul>
  </li>
 </ul>
</nav>

Jetzt würde ich gerne über last-child den "Punkt 5" in meiner Liste ansprechen und ihm einen Background geben. Aber was ich auch tue, alle anderen Punkte (außer Punkt 3) färben sich auch. Hat jemand eine Idee für mich?

mit dem korrekten Aufbau des HTML-Quelltextes sollte dein CSS funktionieren. Falls du nur ein nav hast oder mehrere solche Blöcke gleichartig gestaltet oder z.B. zusätzlich per JS angesprochen werden sollen, brauchst du die ID dort nicht. Dann würde auch nav li:last-child reichen.

#Main ul li:last-child{
	background:red;
}

Tschö, Auge

--
Wo wir Mängel selbst aufdecken, kann sich kein Gegner einnisten.
Wolfgang Schneidewind *prust*