|
||||
2 Spalten-Layout: Float/Clear-Problem - jetzt hats mich auch erwischt
Moin,
ich hatte gehofft, mich nie mit dieser Thematik ans Forum wenden zu muessen, komme nun aber doch nicht drum herum. Es sei gesagt, dass ich viel gelesen habe und auch die Suchfunktion bemueht habe - wahrscheinlich gibt es bereits mehrere Themen, die mein Problem behandeln, ich habe in der Masse der Beitraege aber nichts passendes finden koennen. Die Situation: Ich habe ein 2 Spalten-Layout, also oben ein Header, unten ein Footer und dazwischen eine links gefloatete Navigation fester Breite, gefolgt vom Inhalts-div dynamischer Breite. Funktioniert wunderbar, validiert auch, alles tutti. Jedoch begann ich soeben damit, Testinhalte einzufuegen, bestehend aus generischen Eintraegen, die jeweils aus einem Bildchen und ein bisschen Text daneben bestehen. Diese Eintraege haette ich gerne alle untereinander, das Bildchen immer links vom Text. Also habe ich es genauso wie bei dem Layout der ganzen Seite geloest: Das Bildchen links floaten lassen, dem Text einen schoenen Abstand nach links geben und innerhalb dieser Eintragbox noch ein clear-div, damit alles eingeschlossen bleibt. Nun zum Problem: Da ein clear immer alle vorhergehenden floats beruecksichtigt, wird der erste Eintrag durch das clear-div so gross gezogen, bis das clear-div mit der Unterkante der Navigation abschliesst. Scheint mir logisch, ich sehe, wo das Problem liegt. Nur: wie loese ich das? Nach der Navi ein clear-div einbauen, das ist nicht so toll. Dann rutscht der komplette Inhalt an die Unterkante der Navi. Hm. Ich hoffe und vermute, dass die Loesung auf der Hand liegt, ich aber wieder einmal Betriebsblind bin. Vereinfachter Testcase ist online: 2-Spalten-Layout, FLOAT/CLEAR-Problem - Testcase Danke im Voraus. ;}
__________________
Wenn Du mich fragst, was mir beim Erlenen von Webentwicklung am meisten Probleme bereitet, dann antworte ich: IE. |
Sponsored Links |
|
|||
Frag bitte die Suchfunktion nach "Block Formatting Context".
Das Problem des "globalen Clears" gab es schon oft, z.B. gerade eben in einem Parallelthread. Zitat:
__________________
Corina Rudel Online-Einsteigerkurs HTML/CSS | Buch: Fortgeschrittene CSS-Techniken |
|
||||
Danke fricca, mit diesem Stichwort finde ich relevante Artikel. Das mit dem BFC war mir noch nicht gelaeufig, habe das auf mein Beispiel nun angewandt, indem ich dem Inhalts-div "overflow: hidden" verpasst habe. Das macht die Sache im FF perfekt, im IE 6 zerhaut es das Layout damit erwartungsgemaess.
Ich habe allerdings beschlossen, die Seite ersteinmal fuer Standardkonforme Browser fertig zu schreiben und als zweiten Arbeitsschritt die Anpassung fuer die Problemfaelle per CC vorzunehmen. Ich hoffe, mit diesem Vorgehen falle ich nicht auf die Schnauze. Fuer Leute, die das hier lesen und das gleiche Problem haben, fasse ich kurz zusammen, was ich jetzt in Erfahrung gebracht habe (ich bitte um Korrektur, falls ich Muell weitergebe): Block Formatting Context beschreibt Methoden, mit denen sich "clears" in ihrer Wirkung auf bestimmte Elemente beschraenken lassen. Mit "overflow: hidden" habe ich dieses Verhalten nun fuer das Inhalts-div ausgeloest, somit kann ich darin problemlos clearen. Meine Quelle: Control Block Formatting Context. Wenn aus der Sache weitere Probleme resultieren (ich z.B. spaeter die Anpassung an den IE nicht hinbekomme), dann melde ich mich hier erneut. Oh, eines noch: Wolltest Du damit sagen, dass ich die Aufgabe an dieser Stelle besser auf anderem Wege geloest haette? Wenn ja, immer her mit den Ideen.
__________________
Wenn Du mich fragst, was mir beim Erlenen von Webentwicklung am meisten Probleme bereitet, dann antworte ich: IE. Geändert von domsson (08.01.2009 um 05:28 Uhr) |
|
|||||
Zitat:
Hier rate ich davon ab. Zitat:
Zitat:
Was hier beschränkt werden soll ist die Wirkung des Clear. Zitat:
Wenn immer es geht, stellt float die praktikabelste Lösung dar. Eine einfache Methode: Ein weiteres Element in #content hineinschachteln; diesem float und width:100% geben. Zitat:
Ob es in deinem speziellen Fall andere Lösungen gäbe, kann ich am Musterinhalt schlecht beurteilen. Wenn die Bilder z.B. immer gleich hoch sind, könnte man auf das Clear verzichten und mit einer Mindesthöhe arbeiten. Das will ich aber nicht empfehlen -- und es würde auch das grundsätzliche Problem des globalen Clears nicht lösen.
__________________
Corina Rudel Online-Einsteigerkurs HTML/CSS | Buch: Fortgeschrittene CSS-Techniken Geändert von fricca (07.01.2009 um 21:13 Uhr) Grund: Spezifiktion zu "-kation" geändert. Obwohl, manchmal ... |
|
|||
Darf ich an dieser Stelle einmal auf den zweiten Link in Friccas Signatur hinweisen? Nicht nur weil dort genau dein Layout und deine Probleme mit diesem Layout beschrieben ist, sondern auch, weil dort die möglichen Lösungen ausführlich und sehr kompetent mit allem Für und Wider beschrieben sind.
Für die, die das Buch bereits besitzen: S. 111 ff. |
|
||||
2 Spalten-Layout: Jetzt noch Problem mit IE7
Nachdem ich nun dachte, mit friccas Methode wuerde es einwandfrei funktionieren (was es im FF und IE6 zu tun scheint), entdeckte ich gerade erneut ein Problem, diesmal im IE7.
Hier nochmal der Link zum Testcase: 2-Spalten-Layout, FLOAT/CLEAR-Problem - Testcase. Problem: verschmaelert man den Viewport so weit, dass der Inhaltsbereich seine Mindesgroesse unterschreitet (ich nehme zumindest an, dass es an diesem Punkt geschieht), dann schiebt er sich komplett nach unten, wieder auf Hoehe Unterkante Navigation, wie es anfangs das Problem im IE6 war. Sicherlich koennte ich dieses Problem auch selbst loesen, indem ich noch weitere Kapitel in den Geschichten von float/clear, Block Formatting Context, hasLayout, IE Bugs, etc. lese, jedoch muss ich sagen, dass ich ueber diese Themen in den letzten Tagen soviel gelesen habe, dass mir wirklich der Kopf qualmt und ich den Durchblick einfach verloren habe. Deshalb baue ich mal wieder auf eure Hilfe...
__________________
Wenn Du mich fragst, was mir beim Erlenen von Webentwicklung am meisten Probleme bereitet, dann antworte ich: IE. |
|
|||
Zitat:
Das ist eine von mehreren Herangehensweisen mit dem "Problem" des globalen Clears umzugehen. Bitte definiere "funktionieren" nicht anhand von Browserbugs. Entferne deine diversen min-width-Angaben. Gib einmal min-width für body an.
__________________
Corina Rudel Online-Einsteigerkurs HTML/CSS | Buch: Fortgeschrittene CSS-Techniken |
Sponsored Links |
|
||||
Stimmt, damit wollte ich auch eigentlich zum Ausdruck bringen, dass mir diese Methode von dir vermittelt wurde.
Ich werde in Zukunft darauf achten. Zitat:
Danke, dass Du dir wieder einmal die Zeit genommen hast, mir zu helfen.
__________________
Wenn Du mich fragst, was mir beim Erlenen von Webentwicklung am meisten Probleme bereitet, dann antworte ich: IE. |
Sponsored Links |
Themen-Optionen | |
Ansicht | |
|
|
Ähnliche Themen | ||||
Thema | Autor | Forum | Antworten | Letzter Beitrag |
Ein Layout Problem | Snorfes | CSS | 2 | 10.06.2009 15:27 |
3 Spalten Layout, mal anders | Sushimeister | CSS | 2 | 05.03.2007 11:15 |
problem mit ie5 / boxmodell beim 3 spalten layout | musmus | CSS | 10 | 15.02.2007 15:15 |
Problem mit mehrspaltigem Layout | RalfEggert | CSS | 2 | 05.04.2004 16:20 |
problem bei 2 spaltigem layout | epocs | CSS | 4 | 28.11.2003 18:47 |