Wenn ich die Gliederung erstelle indem ich mit Li die Unterseiten einschliesse funktioniert es leider nicht mehr
Zunächst ein +1 djheke für die Lösung. (Schade, dass es hier im Forum keine "Bedanken"-Funktion o. ä. gibt.)
Die Lösung von djheke beruht auf dem Geschwister-Selektor. Das bedeutet, die auslösenden Elemente und die Zielelemente müssen auf der gleichen Ebene sein. Daher hatte die Lösung auch den Umbau in der Struktur mit Verzicht auf das Listen-Element nötig gemacht.
Wenn Du dir deine gewünschte Struktur mit Einrückungen ansiehst, wobei jede Einrückung einer Ebene entspricht, wird das Problem deutlich, da sich mit CSS de facto nur Elemente auf gleicher oder untergeordneter Ebene ansprechen lassen.
Um deinen gewünschten Efekt umzusetzen, wird wohl JavaScript zum Einsatz kommen müssen.
<!DOCTYPE html>
<html>
<head>
<style type="text/css">
#nav a {
padding-left: 3px;
width: 125px;
height: 35px;
line-height: 35px;
color:black;
display: block;
}
#container{
float: left;
width: 400px;
height:400px;
background: blue;
}
#link1:hover { background:green; }
#link2:hover { background:red; }
#link3:hover { background:magenta; }
/* alt: #container auf gleicher Ebene wie #link1 etc.
#nav #link1:hover ~ #container { background:#ada;}
#nav #link2:hover ~ #container { background:#ad0;}
#nav #link3:hover ~ #container { background:#a3a;}
*/
</style>
</head>
<body>
<div id="nav">
<ul>
<li>
<a href="#">Seite 1 </a>
<ul>
<li>
<a href="#">Seite 2 </a>
</li>
<li>
<a href="#">Seite 3 </a>
</li>
<li>
<a href="#">Seite 4 </a>
<ul>
<li>
<a href="#">Thema 4.1 </a>
</li>
<li>
<a href="#">Thema 4.2 </a>
</li>
</ul>
</li>
</ul>
</li>
</ul>
<div id="container"></div>
</div> <!-- ENDE #nav -->
</body>
</html>
Alles anzeigen