zurück zur Startseite
  


Zurück XHTMLforum > (X)HTML und CSS > CSS
Seite neu laden Frage zu float & clear

Antwort
 
LinkBack Themen-Optionen Ansicht
  #1 (permalink)  
Alt 18.11.2007, 18:35
Benutzer
neuer user
Thread-Ersteller
 
Registriert seit: 28.10.2007
Beiträge: 74
localex befindet sich auf einem aufstrebenden Ast
Standard Frage zu float & clear, jetzt ohne Anhänge :-)

Hi und danke für eure Hilfe!

Ich beginne float zu verstehen

In einer Vorlage bei CS3 ist der Quellcode:

Code:
<!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>Unbenanntes Dokument</title>
<link href="thrColFixHdr.css" rel="stylesheet" type="text/css" />
<!--[if IE 5]>
    <style type="text/css"> 
    /* Fügen Sie CSS-Box-Modell-Korrekturen für IE 5* in diesen bedingten Kommentar ein. */
    .thrColFixHdr #sidebar1 { width: 180px; }
    .thrColFixHdr #sidebar2 { width: 190px; }
    </style>
    <![endif]--><!--[if IE]>
    <style type="text/css"> 
    /* Fügen Sie CSS-Korrekturen für alle IE-Versionen in diesen bedingten Kommentar ein. */
    .thrColFixHdr #sidebar2, .thrColFixHdr #sidebar1 { padding-top: 30px; }
    .thrColFixHdr #mainContent { zoom: 1; }
    /* Mit der obigen proprietären Zoom-Eigenschaft wird IE die Eigenschaft hasLayout zugewiesen, die zur Verhinderung verschiedener Fehler erforderlich ist. */
    </style>
    <![endif]--></head>

<body class="thrColFixHdr">

    <div id="container">
      <div id="header">
        <h1>Kopfzeile</h1>
      <!-- end #header --></div>
      <div id="sidebar1">
      <h3>Sidebar1-Inhalt</h3>
        <p>Die Hintergrundfarbe für dieses div wird nur für die Länge des Inhalts angezeigt. Sollten Sie eine Trennlinie bevorzugen, fügen Sie der CSS-Regel des entsprechenden Divs (#sidebar oder #mainContent) eine Rahmen-Eigenschaft hinzu. </p>
        <p>Donec eu mi sed turpis feugiat feugiat. Integer turpis arcu, pellentesque  eget, cursus et, fermentum ut, sapien. </p>
      <!-- end #sidebar1 --></div>
      <div id="sidebar2">
        <h3>Sidebar2-Inhalt</h3>
        <p>Die Hintergrundfarbe für dieses div wird nur für die Länge des Inhalts angezeigt. Sollten Sie eine Trennlinie bevorzugen, fügen Sie der CSS-Regel des entsprechenden Divs (#sidebar oder #mainContent) eine Rahmen-Eigenschaft hinzu. </p>
        <p>Donec eu mi sed turpis feugiat feugiat. Integer turpis arcu, pellentesque  eget, cursus et, fermentum ut, sapien. </p>
      <!-- end #sidebar2 --></div>
      <div id="mainContent">
        <h1> Hauptinhalt </h1>
        <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent aliquam,  justo convallis luctus rutrum, erat nulla fermentum diam, at nonummy quam  ante ac quam. Maecenas urna purus, fermentum id, molestie in, commodo  porttitor, felis. Nam blandit quam ut lacus. Quisque ornare risus quis  ligula. Phasellus tristique purus a augue condimentum adipiscing. Aenean  sagittis. Etiam leo pede, rhoncus venenatis, tristique in, vulputate at,  odio. Donec et ipsum et sapien vehicula nonummy. Suspendisse potenti. </p>
        <h2>H2-Überschrift </h2>
        <p>Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent aliquam,  justo convallis luctus rutrum, erat nulla fermentum diam, at nonummy quam  ante ac quam. Maecenas urna purus, fermentum id, molestie in, commodo  porttitor, felis. Nam blandit quam ut lacus. Quisque ornare risus quis  ligula. Phasellus tristique purus a augue condimentum adipiscing. Aenean  sagittis. Etiam leo pede, rhoncus venenatis, tristique in, vulputate at, odio.</p>
    	<!-- end #mainContent --></div>
    	<!-- Dieses clear-Element sollte direkt auf das #mainContent-div folgen, um das #container-div anzuweisen, alle untergeordneten Floats aufzunehmen. --><br class="clearfloat" />      <div id="footer">
        <p>Fußzeile</p>
      <!-- end #footer --></div>
    <!-- end #container --></div>
    </body>
</html>

Rot markiert:
<!-- Dieses clear-Element sollte direkt auf das #mainContent-div folgen, um das #container-div anzuweisen, alle untergeordneten Floats aufzunehmen. --><br class="clearfloat" />

Dass dies eine Erklärung für den folgenden Befehl <br class="clearfloat" /> ist, verstehe ich.

Ich verstehe nicht a) die Erklärung und b) den Befehl br class="clearfloat"



Das CSS lautet:

Code:
@charset "utf-8";
body  {
    	font: 100% Verdana, Arial, Helvetica, sans-serif;
    	background: #666666;
    	margin: 0; /* Es empfiehlt sich, margin (Rand) und padding (Auffüllung) des Body-Elements auf 0 einzustellen, um unterschiedlichen Browser-Standardeinstellungen Rechnung zu tragen. */
    	padding: 0;
    	text-align: center; /* Hierdurch wird der Container in IE 5*-Browsern zentriert. Dem Text wird dann im #container-Selektor die Standardausrichtung left (links) zugewiesen. */
    	color: #000000;
    }    .thrColFixHdr #container { 
    	width: 780px;  /* Mit einer Breite, die 20 Pixel unter der vollen Breite von 800 Pixel liegt, können Sie dem Browser-Chrome Rechnung tragen und gleichzeitig eine horizontale Bildlaufleiste vermeiden. */
    	background: #FFFFFF;
    	margin: 0 auto; /* Durch automatische Ränder (in Verbindung mit einer Breite) wird die Seite zentriert. */
    	border: 1px solid #000000;
    	text-align: left; /* Hierdurch wird die Einstellung text-align: center im Body-Element aufgehoben. */
    } 
    .thrColFixHdr #header { 
    	background: #DDDDDD; 
    	padding: 0 10px 0 20px;  /* Diese Auffüllung entspricht der linksbündigen Ausrichtung der Elemente in den divs, die darunter erscheinen. Wenn im #header anstelle von Text ein Bild eingesetzt wird, sollten Sie die Auffüllung entfernen. */
    } 
    .thrColFixHdr #header h1 {
    	margin: 0; /* Wenn Sie den Rand des letzten Elements im #header-div auf 0 einstellen, können Sie das Auftreten unerwarteter Abstände zwischen divs vermeiden. Wenn das div einen Rahmen hat, ist dies unnötig, weil dieser Rahmen die gleiche Wirkung hat. */
    	padding: 10px 0; /* Durch die Verwendung der Auffüllung anstelle von Rändern lässt sich gewährleisten, dass das Element die Kanten des div nicht berührt. */
    }
    .thrColFixHdr #sidebar1 {
    	float: left; /* Da es sich hier um ein floatendes Element handelt, muss eine Breite angegeben werden. */
    	width: 150px; /* Die tatsächliche Breite dieses div umfasst in standardgerechten Browsern bzw. im Standardmodus von Internet Explorer außer der Breite auch die Auffüllung und den Rahmen. */
    	background: #EBEBEB; /* Die Hintergrundfarbe wird nur für die Länge des Spalteninhalts angezeigt. */
    	padding: 15px 10px 15px 20px; /* Mit der Auffüllung wird gewährleistet, dass der Inhalt des div die Kanten nicht berührt. */
    }
    .thrColFixHdr #sidebar2 {
    	float: right; /* Da es sich hier um ein floatendes Element handelt, muss eine Breite angegeben werden. */
    	width: 160px; /* Die tatsächliche Breite dieses div umfasst in standardgerechten Browsern bzw. im Standardmodus von Internet Explorer außer der Breite auch die Auffüllung und den Rahmen. */
    	background: #EBEBEB; /* Die Hintergrundfarbe wird nur für die Länge des Spalteninhalts angezeigt. */
    	padding: 15px 10px 15px 20px; /* Mit der Auffüllung wird gewährleistet, dass der Inhalt des div die Kanten nicht berührt. */
    }
    .thrColFixHdr #mainContent { 
    	margin: 0 200px; /* Der rechte und der linke Rand dieses div-Elements erstellen die beiden äußeren Spalten an den Seitenrändern. Der Spaltenbereich bleibt unabhängig von der Inhaltsmenge der Randleisten-divs immer gleich. Sie können diesen Rand entfernen, falls der Text des #mainContent-div die Randleistenbereiche füllen soll, wenn der Inhalt in den Randleisten endet. */
    	padding: 0 10px; /* padding (Auffüllung) bezeichnet den Innenabstand und margin (Rand) den Außenabstand der div -Box. */
    } 
    .thrColFixHdr #footer { 
    	padding: 0 10px 0 20px; /* Diese Auffüllung entspricht der linksbündigen Ausrichtung der Elemente in den divs, die darunter erscheinen. */
    	background:#DDDDDD;
    } 
    .thrColFixHdr #footer p {
    	margin: 0; /* Wenn Sie die Ränder des ersten Elements in der Fußzeile auf 0 einstellen, können Sie unerwartete Abstände zwischen divs vermeiden. */
    	padding: 10px 0; /* Durch die Verwendung der Auffüllung bei diesem Element entsteht genau wie bei einem Rand ein Leerraum, aber ohne die potenziellen Abstandsprobleme. */
    }
    .fltrt { /* Mit dieser Klasse können Sie ein Element auf der Seite nach rechts fließen lassen. Das floatende 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. */
    	float: left;
    	margin-right: 8px;
    }    .clearfloat { /* Diese Klasse sollte in einem div- oder break-Element platziert werden und das letzte Element vor dem Schließen eines Containers sein, der wiederum einen vollständigen Float enthalten sollte. */
	clear:both;
	height:0;
	font-size: 1px;
	line-height: 0px;
    }

- body: warum wurde dieses CSS-Element angelegt? Ich kann doch die Schriftart in .thrColFixHdr #container definieren?

- .fltrt: warum wurde dieses CSS-Element angelegt?

- .fltlft: warum wurde dieses CSS-Element angelegt?

- .clearfloat: warum wurde dieses CSS-Element angelegt?


Vielen Dank für eure Hilfe & schöne Woche!

Geändert von localex (20.11.2007 um 12:41 Uhr) Grund: Anhänge entfernt, Texte in Code eingefügt
Mit Zitat antworten
Sponsored Links
  #2 (permalink)  
Alt 19.11.2007, 16:07
#
XHTMLforum-Kenner
 
Registriert seit: 30.06.2005
Ort: Hamburg
Beiträge: 2.092
IChao ist ein sehr geschätzer MenschIChao ist ein sehr geschätzer MenschIChao ist ein sehr geschätzer MenschIChao ist ein sehr geschätzer Mensch
Standard

Wenn ich dich angesichts der Beispieldateien richtig verstehe, ist deine eigentliche Frage doch: "Was ist float?"
Wenn du in unsere FAQ guckst, findest du ein paar Links zu dem Thema.

Zu der Frage, warum die Schrift in body definiert wurde und nicht im Kindelement: schwierig, ich denke, es ist so üblich.
__________________
Ingo Chao

Buch: Fortgeschrittene CSS-Techniken
Mit Zitat antworten
Sponsored Links
Antwort

Themen-Optionen
Ansicht

Forumregeln
Es ist Ihnen nicht erlaubt, neue Themen zu verfassen.
Es ist Ihnen nicht erlaubt, auf Beiträge zu antworten.
Es ist Ihnen nicht erlaubt, Anhänge hochzuladen.
Es ist Ihnen nicht erlaubt, Ihre Beiträge zu bearbeiten.

BB-Code ist an.
Smileys sind an.
[IMG] Code ist an.
HTML-Code ist aus.
Trackbacks are an
Pingbacks are an
Refbacks are aus


Ähnliche Themen
Thema Autor Forum Antworten Letzter Beitrag
Frage zu horizontalen Linien marvin1989 CSS 3 29.12.2009 23:35
CSS Text nebeinander? carstiee09 CSS 13 13.11.2009 19:18
IE6, float, clear, divs - Valider Code? thebrains_de CSS 1 28.08.2008 20:48
Mozilla zeigt DIV zu oft an cracki CSS 6 09.03.2008 15:22
Frage zu float und "Aufspannen" eines Kastens alfette CSS 2 11.08.2006 17:21


Alle Zeitangaben in WEZ +2. Es ist jetzt 04:12 Uhr.