﻿<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<meta http-equiv="Content-Type" content="text/html; charset=UTF-8" />
<title>2-spaltiges Layout mit fester Breite, Navigation rechts</title>
<style type="text/css">
<!--
body {
	font: 100%/1.4 Verdana, Arial, Helvetica, sans-serif;
	background-color: #42413C;
	margin: 0;
	padding: 0;
	color: #000;
}

/* ~~ Element-/Tag-Selektoren ~~ */
ul, ol, dl { /* Aufgrund von Abweichungen zwischen verschiedenen Browsern empfiehlt es sich, die Auffüllung und den Rand in Listen auf 0 einzustellen. Zu Konsistenzzwecken können Sie die gewünschten Werte entweder hier oder in den enthaltenen Listenelementen (LI, DT, DD) eingeben. Beachten Sie, dass die hier eingegebenen Werte hierarchisch auf die .nav-Liste angewendet werden, sofern Sie keinen spezifischeren Selektor festlegen. */
	padding: 0;
	margin: 0;
}
h1, h2, h3, h4, h5, h6, p {
	margin-top: 0;	 /* Durch Verschieben des oberen Rands wird das Problem behoben, dass Ränder aus dem zugehörigen div-Tag geraten können. Der übrig gebliebene untere Rand hält ihn getrennt von allen folgenden Elementen. */
	padding-right: 15px;
	padding-left: 15px; /* Durch Hinzufügen der Auffüllung zu den Seiten der Elemente innerhalb der div-Tags anstelle der div-Tags selbst entfallen jegliche Box-Modell-Berechnungen. Alternativ kann auch ein verschachteltes div-Tag mit seitlicher Auffüllung verwendet werden. */
}
a img { /* Dieser Selektor entfernt den standardmäßigen blauen Rahmen, der in einigen Browsern um ein Bild angezeigt wird, wenn es von einem Hyperlink umschlossen ist. */
	border: none;
}

/* ~~ Die Reihenfolge der Stildefinitionen für die Hyperlinks der Site, einschließlich der Gruppe der Selektoren zum Erzeugen des Hover-Effekts, muss erhalten bleiben. ~~ */
a:link {
	color: #42413C;
	text-decoration: underline; /* Sofern Ihre Hyperlinks nicht besonders hervorgehoben werden sollen, empfiehlt es sich, zur schnellen visuellen Erkennung Unterstreichungen zu verwenden. */
}
a:visited {
	color: #6E6C64;
	text-decoration: underline;
}
a:hover, a:active, a:focus { /* Durch diese Gruppe von Selektoren wird bei Verwendung der Tastatur der gleiche Hover-Effekt wie beim Verwenden der Maus erzielt. */
	text-decoration: none;
}

/* ~~ Dieser Container mit fester Breite umschließt alle anderen div-Tags. ~~ */
.container {
	width: 960px;
	background-color: #FFF;
	margin: 0 auto; /* Der mit der Breite gekoppelte automatische Wert an den Seiten zentriert das Layout. */
	overflow: hidden; /* Diese Deklaration bewirkt, dass .container das Ende der fließenden Spalten erkennt und ihren Inhalt aufnimmt. */
}

/* ~~ Dies sind die Spalten für das Layout. ~~ 

1) Eine Auffüllung wird nur oben und/oder unten in den div-Tags positioniert. Die Elemente innerhalb dieser div-Tags verfügen über eine seitliche Auffüllung. Dadurch müssen Sie keine Box-Modell-Berechnungen durchführen. Zu beachten: Wenn Sie dem div-Tag eine seitliche Auffüllung oder einen Rahmen hinzufügen, werden diese zu der festgelegten Breite addiert und ergeben die *gesamte* Breite. Sie können auch die Auffüllung für das Element im div-Tag entfernen und ein zweites div-Tag ohne Breite und mit der gewünschten Auffüllung im ersten div-Tag einfügen.

2) Für die Spalten wurde kein Rand angegeben, da es sich um fließende Spalten handelt. Wenn Sie unbedingt einen Rand hinzufügen möchten, platzieren Sie ihn nicht auf der Seite in Flussrichtung (z. B. ein rechter Rand in einem div-Tag, das so festgelegt ist, dass das Element nach rechts fließt). In vielen Fällen kann stattdessen eine Auffüllung verwendet werden. Bei div-Tags, bei denen diese Regel gebrochen werden muss, sollten Sie der Regel des div-Tags eine display:inline-Deklaration hinzufügen, um das Problem zu umgehen, dass in einigen Versionen von Internet Explorer der Rand doppelt angezeigt wird.

3) Da Klassen in einem Dokument mehrmals verwendet werden können (und zudem auf ein Element mehrere Klassen angewendet werden können), wurden den Spalten Klassennamen statt IDs zugewiesen. Beispielsweise können zwei div-Tags für eine Seitenleiste bei Bedarf gestapelt werden. Diese div-Tags können problemlos in IDs geändert werden, solange Sie sie nur einmal pro Dokument verwenden.

4) Wenn Sie die Navigation auf der linken statt auf der rechten Seite platzieren möchten, lassen Sie diese Spalten einfach in die andere Richtung fließen (alle nach links anstatt alle nach rechts). Die Spalten werden dann in umgekehrter Reihenfolge dargestellt. Die div-Tags in der HTML-Quelle müssen nicht verschoben werden.

*/
.sidebar1 {
	float: right;
	width: 200px;
	background-color: #EADCAE;
	padding-bottom: 10px;
}
.content {
	padding: 10px 0;
	width: 760px;
	float: right;
}

/* ~~ Dieser gruppierte Selektor gibt die Listen im .content-Bereich an. ~~ */
.content ul, .content ol { 
	padding: 0 15px 15px 40px; /* Diese Auffüllung setzt die rechte Auffüllung in der obigen Regel für Überschriften und Absätze fort. Die Auffüllung wurde unten für den Abstand zwischen anderen Elementen in den Listen und links für den Einzug platziert. Sie können die Werte nach Bedarf ändern. */
}

/* ~~ Stile für die Navigationslisten (können entfernt werden, wenn Sie ein vordefiniertes Ausklappmenü wie Spry verwenden) ~~ */
ul.nav {
	list-style: none; /* Hiermit wird die Listenmarkierung entfernt. */
	border-top: 1px solid #666; /* Hiermit wird der obere Rand für die Hyperlinks erstellt. Alle anderen werden mit einem unteren Rand im LI-Element platziert. */
	margin-bottom: 15px; /* Hiermit wird der Abstand zwischen den Navigationselementen und den Inhalten unten erstellt. */
}
ul.nav li {
	border-bottom: 1px solid #666; /* Hiermit wird die Trennung der Schaltflächen erstellt. */
}
ul.nav a, ul.nav a:visited { /* Durch Gruppieren dieser Selektoren wird sichergestellt, dass die Hyperlinks auch nach dem Aufrufen die Form einer Schaltfläche beibehalten. */
	padding: 5px 5px 5px 15px;
	display: block; /* Hiermit werden die Blockeigenschaften für den Hyperlink angegeben, sodass das gesamte umschließende LI-Element aufgefüllt wird. Hiermit wird angegeben, dass der gesamte Bereich auf einen Mausklick reagiert. */
	width: 180px;  /*Mit dieser Breite reagiert die gesamte Schaltfläche in IE6 auf Mausklicks. Kann entfernt werden, wenn IE6 nicht unterstützt werden muss. Berechnen Sie die exakte Breite durch Subtrahieren der Auffüllung für diesen Hyperlink von der Breite des Containers für die Randleiste. */
	text-decoration: none;
	background-color: #C6D580;
}
ul.nav a:hover, ul.nav a:active, ul.nav a:focus { /* Hiermit wird der Hintergrund und die Textfarbe bei der Navigation mit der Maus und der Tastatur geändert. */
	background-color: #ADB96E;
	color: #FFF;
}

/* ~~ Verschiedene float/clear-Klassen ~~ */
.fltrt {  /* Mit dieser Klasse können Sie ein Element auf der Seite nach rechts fließen lassen. Das fließende Element muss vor dem Element stehen, neben dem es auf der Seite erscheinen soll. */
	float: right;
	margin-left: 8px;
}
.fltlft { /* Mit dieser Klasse können Sie ein Element auf der Seite nach links fließen lassen. Das fließende Element muss vor dem Element stehen, neben dem es auf der Seite erscheinen soll. */
	float: left;
	margin-right: 8px;
}
.clearfloat { /* Diese Klasse kann in einem <br />-Tag oder leeren div-Tag als letztes Element nach dem letzten fließenden div-Tag (im #container) platziert werden, wenn overflow:hidden im .container entfernt wird. */
	clear:both;
	height:0;
	font-size: 1px;
	line-height: 0px;
}
-->
</style>
</head>
<body>
<div class="container">
  <div class="sidebar1">
    <ul class="nav">
      <li><a href="#">Hyperlink 1</a></li>
      <li><a href="#">Hyperlink 2</a></li>
      <li><a href="#">Hyperlink 3</a></li>
      <li><a href="#">Hyperlink 4</a></li>
    </ul>
    <p> Die oben stehenden Hyperlinks stellen eine allgemeine Navigationsstruktur dar, bei der eine ungeordnete Liste mit CSS formatiert wird. Verwenden Sie diese Navigationsstruktur als Ausgangspunkt und ändern Sie die Eigenschaften, um Ihre Website nach Ihren Vorstellungen zu gestalten. Wenn Sie Ausklappmenüs verwenden möchten, erstellen Sie ein eigenes Menü auf Grundlage eines Spry-Menüs, eines Menü-Widgets aus Adobe Exchange oder einer Vielzahl anderer JavaScript- oder CSS-Lösungen.</p>
    <p>Wenn sich die Navigationsstruktur am oberen Rand befinden soll, verschieben Sie ul.nav an den oberen Rand der Seite und erstellen Sie die Formatierung neu.</p>
    <!-- end .sidebar1 --></div>
  <div class="content">
    <h1>Anweisungen</h1>
    <p>Beachten Sie, dass der CSS-Code für diese Layouts mit vielen Kommentaren versehen ist. Wenn Sie vor allem in der Entwurfsansicht arbeiten, werfen Sie einen Blick auf den Code, um Tipps zum Verwenden von CSS für die festen Layouts zu erhalten. Sie können diese Kommentare vor dem Veröffentlichen Ihrer Site löschen. Weitere Informationen zu den in diesen CSS-Layouts verwendeten Methoden finden Sie in diesem Artikel im Adobe Developer Center - <a href="http://www.adobe.com/go/adc_css_layouts">http://www.adobe.com/go/adc_css_layouts</a>.</p>
    <h2>Clearing-Methode</h2>
    <p>Da alle Spalten fließend gestaltet sind, wird bei diesem Layout die Deklaration overflow:hidden für .container verwendet. Diese Clearing-Methode bewirkt, dass .container das Ende der Spalten erkennt, damit alle in .container platzierten Rahmen oder Hintergrundfarben angezeigt werden. Ein großes Element, das über .container hinausragt, wird abgeschnitten angezeigt. Sie können darüber hinaus keine negativen Ränder oder absoluten Positionen mit negativen Werten verwenden, um Elemente aus .container zu ziehen, da diese auch in diesem Fall nicht außerhalb von .container angezeigt werden.</p>
    <p>Wenn Sie diese Eigenschaften unbedingt verwenden möchten, müssen Sie auf eine andere Clearing-Methode zurückgreifen. Am zuverlässigsten ist das Hinzufügen eines &lt;br class=&quot;clearfloat&quot; /&gt;- oder &lt;div  class=&quot;clearfloat&quot;&gt;&lt;/div&gt;-Tags nach der letzten fließenden Spalte (jedoch vor dem Ende von .container). Dadurch wird der gleiche Clearing-Effekt erzielt.</p>
    <h3>Fußzeile</h3>
    <p>Durch Hinzufügen einer Fußzeile nach den Spalten, jedoch immer noch innerhalb von .container, schlägt die Clearing-Methode mit der Anweisung overflow:hidden fehl. Sie können einen .footer in einem zweiten .container außerhalb des ersten platzieren, ohne dass dies negative Auswirkungen hat. Am einfachsten ist es unter Umständen, ein Layout mit Kopf- und Fußzeilen zu erstellen und die Kopfzeile zu entfernen, um die Clearing-Methoden in diesem Layouttyp zu verwenden.</p>
    <h4>Hintergründe</h4>
    <p>Die Hintergrundfarbe für jedes div-Tag wird grundsätzlich nur für die Länge des Inhalts angezeigt. Wenn Sie eine Hintergrundfarbe oder einen Rahmen für die Darstellung einer Randspalte verwenden, erstreckt sich die Hintergrundfarbe oder der Rahmen daher nicht auf die gesamte Fußzeile, sondern endet mit dem Ende des Inhalts. Wenn das div-Tag .content immer mehr Inhalt enthält, können Sie im div-Tag .content einen Rahmen einfügen, um das Tag von der Spalte zu trennen.</p>
    <!-- end .content --></div>
  <!-- end .container --></div>
</body>
</html>
