tutorials.de Buch-Aktion 05/2012
ERLEDIGT
NEIN
ANTWORTEN
9
ZUGRIFFE
854
EMPFEHLEN
  • An Twitter übertragen
  • An Facebook übertragen
AUF DIESES THEMA
ANTWORTEN
  1. #1
    Avatar von cocoon
    cocoon cocoon ist offline Mitglied Brokat
    Registriert seit
    Nov 2001
    Beiträge
    437
    Ich möchte folgendes Layout erzeugen:
    Code :
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    
    -------------------------
    |        Header         |
    -------------------------
    |       |               |
    |       |               |
    |  Nav  |     Main      |
    |       |               |
    |       |               |
    -------------------------
    |       |       |       |
    | foot1 | foot2 | foot3 |
    |       |       |       |
    -------------------------

    Bereits funktionieren tut der erste Teil, d.h. header, nav und main. Jetzt versuche ich den dreispalten footer darunter zu setzen. Leider wird er (im FF, IE bislang nicht getestet) immer unter den Header gesetzt statt nach unten, egal, ob ich ihn innerhalb des container-div setze oder ausserhalb, egal ob mit clearfix oder ohne.. Ich verzweifle mal wieder..

    HTML-Code:
    <div id="container">
       <div id="header"></div>
       <div id="sidebar"></div>
       <div id="content"></div>
    </div>
     
    Nur tote Fische schwimmen mit dem Strom

  2. #2
    Maik Tutorials.de Gastzugang
    Hi,

    wenn du hier wegen einem "CSS-Problem" vorsprichst, solltest du auch deinen CSS-Code vorstellen.

    In diesem Probelauf hab ich die drei Blöcke (foot1 - 3) in einen übergeordneten Block #footer eingebettet, der mit clear:left formatiert ist, und so "rutscht" der Bereich auch nicht unter den Header:
    HTML-Code:
    <div id="container">
       <div id="header">header</div>
       <div id="sidebar">sidebar</div>
       <div id="content">content</div>
       <div id="footer">
            <div class="foot">foot1</div>
            <div class="foot">foot2</div>
            <div class="foot">foot3</div>
       </div>
    </div>
    Code css:
    1
    2
    3
    4
    5
    6
    7
    8
    9
    10
    11
    12
    13
    14
    15
    16
    17
    18
    19
    20
    
    #container {
    width:900px;
    }
    #header {
    height:100px;
    }
    #sidebar {
    float:left;
    width:200px;
    }
    #content {
    margin-left:200px;
    }
    #footer {
    clear:left;
    }
    .foot {
    float:left;
    width:300px;
    }

    mfg Maik
     

  3. #3
    Avatar von cocoon
    cocoon cocoon ist offline Mitglied Brokat
    Registriert seit
    Nov 2001
    Beiträge
    437
    Dank Dir, aber leider rutschen die drei unteren Spalten immer noch nach oben zwischen Header und Zwei-Spalten-Layout:

    HTML-Code:
    <div id="container">
        <div id="header"></div>
        <div id="sidebar"></div>
        <div id="content"></div>
        <div id="footer_sitemap">
            <div class="footer_sitemapPart">foot1</div>
            <div class="footer_sitemapPart">foot2</div>
            <div class="footer_sitemapPart">foot3</div>
        </div>
    </div>

    HTML-Code:
    #container {
    position: relative;
    width: 990px;
    margin: 0 auto;
    }
    
    #header {
    margin-bottom: 20px;
    }
    
    #sidebar {
    position: absolute;
    left: 0;
    width: 320px;
    }
    
    #content {
    position: absolute;
    left: 340px;
    width: 650px;
    }
    
    #footer_sitemap{
    clear:left;
    }
    
    .footer_sitemapPart {
    float:left;
    width:330px;
    }
     
    Nur tote Fische schwimmen mit dem Strom

  4. #4
    Maik Tutorials.de Gastzugang
    Elemente umfliessen lassen, oder sie im Viewport absolut positionieren, sind zwei Paar Schuhe. Da nützt das "Clearing" dann natürlich herzlich wenig.

    Wie gesagt, das nächste Mal bitte gleich den ganzen Code posten, damit hier erst keine Mißverständnisse aufkommen können - vielen Dank!

    mfg Maik
     

  5. #5
    Avatar von cocoon
    cocoon cocoon ist offline Mitglied Brokat
    Registriert seit
    Nov 2001
    Beiträge
    437
    Weißt Du denn, wie ich den Footer jetzt korrekt realisiere? Hatte bereits versucht, ihn ebenfalls zu positionieren (Sidebar und Content in ein DIV, dann das Footer DIV mit top: 0 und left: 0 darunter positioniert), aber das hat auch nicht funktioniert.
     
    Nur tote Fische schwimmen mit dem Strom

  6. #6
    Maik Tutorials.de Gastzugang
    Wenn der Footer bei zunehmenden Inhalt in den Spaltenblöcken nach unten geschoben werden soll, bist du hier mit ihren absoluten Positionierungen schlecht beraten, da es hierfür keine Lösung gibt.

    Wie's funktioniert, hab ich dir zu Beginn demonstriert.

    mfg Maik
     

  7. #7
    Avatar von cocoon
    cocoon cocoon ist offline Mitglied Brokat
    Registriert seit
    Nov 2001
    Beiträge
    437
    So wie von Dir oben beschrieben habe ich es jetzt auch nochmal versucht. Leider zerschiesst mir das wiederum das content DIV, welches dann nämlich (um die Höhe des Sidebar-Inhaltes) nach unten rückt. Ich nehme an, dies passiert deswegen, weil ich im content-DIV bei einigen Elementen die clear-Eigenschaft angegeben habe. Daher habe ich dies auch versucht rauszunehmen, was mir das content-DIV dann aber auf andere Weise zerschiesst.

    HTML-Code:
    <div id="container">
        <div id="header"></div>
        <div id="sidebar"></div>
        <div id="content">
            <div class="searchForm"></div>
            <div class="pageMenu"></div>
            <div id="mainContent"></div>
        </div>
        <div id="footer_sitemap"></div>
    </div>
    HTML-Code:
    #container {
    position: relative;
    width: 990px;
    margin: 0 auto;
    }
    
    #header {
    margin-bottom: 20px;
    }
    
    #sidebar {
    position: absolute;
    left: 0;
    width: 320px;
    }
    
    #content {
    position: absolute;
    left: 340px;
    width: 650px;
    }
    
    #footer_sitemap{
    clear:left;
    }
    
    .pageMenu {
    clear: both;
    }
    
    .searchForm {
    margin: 0;
    padding: 0;
    font-size:0.8em;
    background:url(img/searchbox.gif) no-repeat;
    width:150px;
    height:23px;
    float: right;
    }
    
    #mainContent {
    clear: both;
    position: relative;
    background: white url(img/tr_white.gif) no-repeat top right;
    min-height: 300px;
    height: auto !important;
    height: 300px;
    padding: 2em;
    color: black;
    }
     
    Nur tote Fische schwimmen mit dem Strom

  8. #8
    Maik Tutorials.de Gastzugang
    Zitat Zitat von cocoon Beitrag anzeigen
    So wie von Dir oben beschrieben habe ich es jetzt auch nochmal versucht. Leider zerschiesst mir das wiederum das content DIV, welches dann nämlich (um die Höhe des Sidebar-Inhaltes) nach unten rückt. Ich nehme an, dies passiert deswegen, weil ich im content-DIV bei einigen Elementen die clear-Eigenschaft angegeben habe.
    Dann tausch mal in meinem Beispiel diese Zeilen:
    Code css:
    1
    2
    3
    4
    5
    6
    
    #content {
    margin-left:200px;
    }
    #footer {
    clear:left;
    }
    gegen diese aus:
    Code css:
    1
    2
    3
    4
    5
    6
    7
    
    #content {
    float:right;
    width:650px;
    }
    #footer {
    clear:both;
    }

    mfg Maik
     

  9. #9
    Avatar von cocoon
    cocoon cocoon ist offline Mitglied Brokat
    Registriert seit
    Nov 2001
    Beiträge
    437
    Klasse, Dank Dir vielmals! Kannst Du mir erklären, warum es so funktioniert bzw. warum vorher nicht? Liegt es daran, dass vorher immer links gefloatet wurde?
     
    Nur tote Fische schwimmen mit dem Strom

  10. #10
    Maik Tutorials.de Gastzugang
    Der Block, in dem weitere Floats "gecleart" werden, muß mit einer float-Deklaration aus dem normalen Textfluß genommen, damit es nicht zum geschilderten Umbrechen kommt.

    mfg Maik
     

Ähnliche Themen

  1. 3 Spalten Layout
    Von Xching im Forum CSS
    Antworten: 7
    Letzter Beitrag: 06.10.10, 11:49
  2. 3-Spalten-Layout / Moz vs. IE
    Von sipoh im Forum CSS
    Antworten: 6
    Letzter Beitrag: 31.10.07, 13:26
  3. Antworten: 3
    Letzter Beitrag: 07.05.07, 06:13
  4. 3-Spalten-Layout mit CSS
    Von Crashburn im Forum CSS
    Antworten: 7
    Letzter Beitrag: 06.05.07, 16:30
  5. 3 Spalten Layout
    Von freakcx im Forum CSS
    Antworten: 2
    Letzter Beitrag: 06.11.05, 00:19