Moin moin
Wenn ich dich also richtig verstanden habe, macht es sinn, daß Menu z.B. in ein Div zu packen.
Dieses nun gerade meistens nicht. Wenn Du hierfür z.B. eine Liste verwendest, hast Du bereits ein Block-Element, welches die Menüpunkte gruppiert und das Du ausreichend formatieren kannst. Ein umschließendes div wäre hier überflüssig.
Nicht in jedem Fall. In einem aktuellen Projekt habe ich folgende Analogie hergestellt: Überschrift 2. Ebene im Inhalt gleich Überschrfit 2. Ebene im Menü.
Unter jeder Überschrift kommt eine Liste mit allen weiteren Links.
<h2>Einleitung</h2>
<ul>
<li>Vorwort</li>
<li>
Zielgruppe
<ul>
<li>Junge Leser</li>
<li>Alte Leser</li>
<li>(...)</li>
</ul>
</li>
<li>Konventionen</li>
<li>Copyright</li>
</ul>
usw.
Bisher habe ich wie Du gedacht, fand die Idee, die Struktur des Dokumentes in dem Menü wiederzugeben, aber interessant (über die Möglichkeit der verschachtelten Listen hinaus)...
An dem Beispiel soll lediglich klar werden: es hängt von den Inhalten ab, welche Lösung die beste ist.
Eine pauschale Aussage läßt sich halt schwer machen.
Wie positioniere ich denn dieses div jetzt mit einer relativen Größenangabe so, daß es nicht direkt ganz oben anfängt? Mit '%' klappt das nicht oder?
Vielleicht schaust Du Dir mal http://www.1ngo.de/web/css-layout.html an. Hier siehst Du auch, wann divs sinnvoll eingesetzt werden.
Das äußere div gruppiert sämtliche Elemente und wäre für für das Standardlayout hier auch nicht erforderlich; da mit demselben HTML aber auch eine Begrenzung und Umrahmung der Seite möglich sein soll, ist es doch erforderlich.
Geht doch - du hast doch das <body>-Element - oder habe ich da etwas ncit verstanden?
Das Menü kommt wie bereits erwähnt hier ohne div aus. Lediglich die Elemente des Inhaltsbereichs werden über ein div gruppiert, um einen Rahmen und einheitlichen Hintergrund zu ermöglichen. Bei Verzicht hierauf könnte man allerdings auch dieses div einsparen.
Für einen Anfänger ist es sicher leichter, die Seite in verschiedene, inhaltlich logische Bereiche aufzuteilen, wie zum Beispiel:
Site-Identifikator (1)
Menü (2)
Inhalt (3)
(1) Mit Site-Identifikator meine ich den Bereich, der fast immer (aber eben manchmal auch nicht) den Kopf der Seite bereitstellt.
(2) Navigation
(3) Nimmt die eigentlichen textlichen und bildlichen Inhalte auf.
Beispiel
+-------------------------------+
| (1) |
+-------------------------------+
| | |
| (2) | |
| | (3) |
| | |
+------+ |
| . |
| . |
| . |
| . |
| . |
+-------------------------------+
Warum ich solche "komischen" namen verwende: Bei einem Redesign der Seite kann ich u. U. einen "Kopf" nciht mehr gebrauchen, weil ich die Seitenidentifikation mit Namen des Angebotes usw z. B. am rechten Seitenrand darstellen will.
Ich überlege mir immer Namen, die ich auch dann noch verwenden kann, wenn die Seite einmal nicht nur farblich, sondern komplett umgestaltet werden soll - was oben ist nach unten und umgekehrt.
Nur so stelle ich sicher, daß ich zu layoutzwecken, das HTML nciht mehr anfassen muss.
Um mal ein Negativ-Beispiel zu nennen: eine Klasse blck12pxbld um schwarezn, 12 Pixel großen, fetten Text darzustellen.
Die Klasse muss dann später in allen HTML-Dokumenten umbenannt werden, wenn dieser Text mal nicht mehr fett sein soll oder nciht mehr schwarz oder was auch immer...
Gruß,
Marc.
--
Und immer schön
validieren (
http://validator.w3c.org)
sh:( fo:| ch:? rl:? br:> n4:& ie:% mo:} va:} de:] zu:) fl:( ss:| ls: js:(
http://www.peter.in-berlin.de/projekte/selfcode/?code=sh%3A%28+fo%3A%7C+ch%3A%3F+rl%3A%3F+br%3A%3E+n4%3A%26+ie%3A%25+mo%3A%7D+va%3A%7D+de%3A%5D+zu%3A%29+fl%3A%28+ss%3A%7C+ls%3A+js%3A%28