Hallo,
ich möchte gerne eine Navigation zusammenschreiben. Die soll max. 30 px in der Breite in Anspruch nehmen: Die obersten Menüpunkte als Lasche an der Seite, bein Mausdrauf sliden die Untermenüs herein. Das Ganze mach keinen Sinn mit Frames, weil ich da effektiv keinen Platz spare.
Ich kann Deinem Posting leider nicht genau entnehmen, was Du eigentlich wissen willst. Daher ein paar generelle Informationen zu Tabellenlayouts, Framelayouts und <div>- bzw. CSS-Layouts.
Ein Framelayout basiert auf dem Prinzip, dass man eine "Seite" als sog. "Container" für andere Seiten benutzt. In jedem Frame wird eine eigentständige HTML-Seite geladen. Das ist zwar relativ leicht zu realisieren, aber bereitet auch Probleme, z.B. mit Suchmaschinen. Daher rate ich von Frames ab.
Ein Tabellenlayout ist so konstruiert, dass in einer blinden Tabelle alle Elemente einer Seite auf dem Bildschirm angeordnet werden. Oft sieht man Tabellenlayouts, die eine feste breite haben. Tu' mir einen Gefallen und falls Du ein Tabellenlayout umsetzt, lass es sich auf die ganze Seitenbreite erstrecken. Bei Tabellenlayouts ist zu beachten, dass alle Elemente in nur einer einzigen Seite enthalten sind. Dadurch ergeben sich einige Vorteile (die Nachteile von Frames sind praktisch weg), aber auch Nachteile. Denn wenn Du ein größeres Projekt hast, bei dem Du die Navigation verändern willst, dann brauchst Du einen Automatismus, denn jede Seite einzeln zu verändern, lohnt sich nicht. Einige Editoren bieten Include-Funktionalität an, desweiteren gibt es noch Server-Side-Includes (SSI) - sofern sie Dir auf Deinem Server zur Verfügung stehen. Wenn das "Projekt" kleiner ist und nur aus wenigen Seiten besteht, kannst Du zwar solche Technologien einsetzen, musst es aber nicht, da man bei bis zu 20 Seiten (meine Erfahrung) den Überblick noch behält.
<div>- bzw. CSS-Layouts (andere Namen für das gleiche Prinzip) gehen einen anderen Weg. Wie beim Tabellenlayout sind die einzelnen Elemente in einer Seite eingebaut, jedoch sind diese in einzelne <div>s gekapselt. Das komplette Design dieser Seite definierst Du in Deiner CSS-Stylesheet-Datei. Den Inhalt der Seite selbst strukturierst Du logisch, indem Du die vorgesehenen HTML-Elemente verwendest. (<h?> für Überschriften, <p> für Absätze, <ul>/<ol>/<dl> für Listen, etc.) Diese werden dann auch über CSS formatiert. Das hat mehrere Vorteile: Browser, die kein CSS können, zeigen die logische Struktur der Webseite an und der Benutzer kann sich auf der Seite gut zurechtfinden, da alles klar gegliedert ist. Desweiteren kannst Du ein Layout innerhalb von relativ kurzer Zeit verändern, im Idealfall musst Du nur die css-Datei bearbeiten. Du kannst sogar alternative Layouts für den Benutzer zur Verfügung stellen, die er mit einem passenden Browser auswählen kann. Der Nachteil ist jedoch, dass verschiedene Browser eine unterschiedliche Meinung darüber haben, wie CSS interpretiert werden soll. Daher musst Du Browser von bestimmten CSS-Definitionen oder gar der ganzen CSS-Datei ausschließen. (ich denke da vor allem an Netscape 4) Wie das geht, erfährst Du unter http://aktuell.de.selfhtml.org/tippstricks/css/browserweiche/. Im Archiv findet sich einiges auch zum Thema CSS- bzw. <div>-Layouts. Suche einfach mal danach.
Grüße,
Christian