Für das Basislayout könntest du nach dieser Anleitung verfahren: http://www.ohne-css.gehts-gar.net/0027.php
Den Inhalt des Headers kannst du dann später durch entsprechende Positionierungen anordnen.
Die waagrechte Navigation kann man entweder in oder unterhalb des Headers setzen.
Beiträge von sejuma
-
-
Ich finde es schlecht, dass Benutzerinformationen und Avatar in einer eigenen Zeile (Balken) quer über dem Beitrag angezeigt werden.
Das bläht nicht nur alles auf (besonders wenn Benutzerbilder verwendet werden), sondern man verliert dadurch auch den Blick für's Wesentliche, nämlich den Beitrag an sich.
Mittelbare Folge: Die Beitragstextzeilen erstrecken sich damit auf die gesamte Breite, sind somit wesentlich länger und erfordern eine erhöhte Konzentration beim Lesen.
Vorher gefiel mir's besser und war auch effektiver, als die Benutzerinfos links standen und rechts daneben der Beitrag. -
Versuch's mal damit (nur im FF getestet):
Zitatdiv#navigation {
background-image:url(bg_lightblue.jpg);
float: left; width: 135px;
height: 20px;
margin: 0; padding: 10px;
border-left:5px #2b6196 solid;
} -
Ohne jetzt bereits ins Problemdetail zu gehen:
Zunächst solltest du einige grundsätzliche Dinge beachten:Deiner Seite Fehlt ein Standarddoctype. Das hat zur Folge, dass der IE das CSS-Boxmodell nicht richtig darstellen kann und es in diesem Browser bereits allein deshalb zu unterschiedlichen Darstellungen kommt. Der Doctype gibt sozusagen an, in welcher "Sprache" die Seite erstellt wurde. Da gibt es gewisse Abweichungen.
Schreibe deshalb mal das in die allererste Zeile des Quelltextes:Code<!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01 Transitional//EN" "http://www.w3.org/TR/html4/loose.dtd">
Nähere Infos zum DT siehe http://de.selfhtml.org/html/allgemein…htm#dokumenttyp
Der zweite Fehler liegt darin, dass du zwischen jedem Div einen Zeilenumbruch eingefügt hast.
Lass also mal überall die "
" weg.Nun zu einigen Details:
Du verwendest unterschiedliche Bezeichnungen:
Im CSS-Teil schreibst du "Seite" groß, im HTML-Teil klein.
Verwende am besten durchgehend Kleinschrift. Den vorangestellten div musst du nicht erwähnen, spart Quellcode.
Also statt bisher "div#Seite" besser "#seite"Im body zentrierst du die Schrift, um sie auf #Seite wieder auf linksbündig zu stellen. Beide Angaben sind unnötig, in beiden Elementen kannst du die text-align-Angabe weglassen.
Solche Sachen lassen sich wesentlich vereinfachen:
Statt bisher
Besser:Wenn das alles bereinigt ist, solltest du nochmal prüfen, ob die Summe der inneren Div's unter Berücksichtigung von Rahmen, padding und margin so groß ist wie die Breite von #seite. Ansonsten passen sie da nicht rein.
Versuche mal, diese Punkte abzuarbeiten und dann sollte es schon besser aussehen.
-
Bitte, ich wusste doch, dass es nicht so schlimm wird!
-
Der Knackpunkt sind die Grafiken, die nun mal eine feste Pixelbreite und -höhe haben. Das kann man bei den images zwar auch etwas dynamisch gestalten, führt dann aber zu Verpixelungen.
Hinzu kommt, dass heutzutage die Bildschirmgrößen und damit die Viewports sehr variieren, so dass man bei einem flüssigen Layout kaum noch vorhersehen kann, wie die Seite bei den unterschiedlichen Besuchern angezeigt wird.
Gerade aus diesem Grund tendiere ich in letzter Zeit zu fixen Layouts.
Ich achte allerdings auf eine (vermeintlich) ausreichend große Schrift (meist 0.9em), so dass ich zumindest vermute, dass sich das Vergrößerungsbedürfnis in Grenzen hält.
Wer dennoch zoomt, muss damit rechnen, dass nicht mehr alles perfekt angezeigt wird. Irgendwo müssen sich die Elemente ja ihren Platz suchen.
Ich meine mich aber zu erinnern, irgendwo mal gelesen zu haben, dass dies für manche Browser kein Problem mehr darstellt und mit der Zoomfunktion alles porportional vergrößert oder verkleinert wird. Möglicherweise gibt es da auch Zusatztools, die man installieren kann. bin mir aber nicht ganz sicher. -
Das ist wirklich nicht so schlimm wie du denkst. Probier's einfach mal aus.
Du kannst natürlich auch jedem Div die gleiche Höhe geben, z.B. einen bestiommten Pixelwert. Das hat allerdings den Nachteil, dass es dann nicht mehr flexibel ist, wenn der Inhalt einmal zu- oder abnimmt. In diesem Fall müsstest du alle Werte immer wieder neu anpassen.
-
Da gibt es evtl. auch noch Unterschiede zwischen den verschiedenen Browsern.
Ich habe dieses Thema noch nicht selbst untersucht und kann somit keine konkrete Hilfe geben.
Möglicherweise hilft dir das (ab gestern 19.42 Uhr) weiter? -
So ganz wirst du das wohl nicht hinbekommen.
Aber sieh dir mal diese Seite an: http://www.parterremedia.de/kompetenzen/barrierefrei.html
Da sind ziemlich alle Einheiten in "em".
Vielleicht ist das die Lösung ? -
Müsstest du nochmal näher erläutern.
So ganz abstrakt tippe ich auf einen Fall für Faux Columns -
-
Noch ne Variante:
Code<h2>Überschift der Box:</h2> <div class="box"> <div style="float: right;">[img]star.gif[/img][img]star.gif[/img]</div> <h3>#1 AAAAAAAAAAAAAA</h3></img><div style="h3">(BBBBBBBBBB)</div>
Es wäre sinnvoll, wenn du mal einen Link psoten könntest, damit man alles im Zusammenhang sieht.
-
-
Dann setz die Bilder mal etwas tiefer in die box.
-
Die Tipps von koslowski solltest du beherzigen.
Ich versuch mal ganz vereinfacht float zu erklären:Div's sind Blockelemente. Sie ordnen sich standardmäßig immer untereinander an.
Nun erfordert ein Layout, dass man Div's nebeneinander anordnen muss.
So z.B. ein dreispaltiges Layout, links die Navi, in der Mitte der Content und Rechts eine Adbar.
Mit float kannst du nun bewirken, dass diese drei "Spalten" (Div's) nicht untereinander, sondern nebeneinander stehen.
Es gibt dabei durchaus mehrere Möglichkeiten, diese Anordnung mit unterschiedlichen Styleangaben zu realisieren.
Ist diese Anornung fertig, dann clearst du im Anschluss, damit sich der nächste Div, z.B. ein Footer wieder quer darunter setzen kann.Vielleicht dient diese Anleitung dem besseren Verständnis.
-
-
Wenn du den Firefox hast, kannst du dir den Web-Developer installieren. Da ist ein Maßwerkzeug dabei.
-
Was spricht dagegen? Zumindest die ersten beiden. Beim dritten wär's überflüssig, schadet aber auch nicht.
-
mamboobamboo,
werde dir mal zunächst darüber klar, wie deine Seite aussehen soll.
Danach kannst du Größe und Position der einzelnen Elemente definieren.Hier mal ein gängiges Layoutbeispiel, das du ggf. deinen Vorstellungen anpassen kannst.
Etwas Theorie und Verständnis (Lernaufwand) gehört allerdings auch dazu.
-
Die Ursache liegt in der absoluten Positionierung. Die solltest du komplett weglassen, weil sonst die Boxen aus dem Fluss genommen sind und sich gegenseitig überlagern können..
So wie das jetzt dasteht soll wohl die Box mit 190px über der von 300px stehen.
Das wäre viel eleganter so zu lösen:
Code<div style="margin-left: 390px; margin-top: 190px;"> ...</div> <div style="margin-left: 390px;">..</div>
Hier ordnet sich die zweite unmittelbar unter der ersten an.
Wenn sie von der ersten noch etwas Abstand haben soll, dann gib ihr noch ein paar Pixel margin-top.Ob der Leftabstand von 390px sinnvoll ist bezweifle ich. Vermutlich willst du damit eine Art Zentrierung vornehmen, die dann aber nur an deinem individuellen Bildschirm klappt.
Besser wäre eine Zentrierung (falls das gewollt ist) damit: http://www.ohne-css.gehts-gar.net/0001.php