Rahmen bei 3 spaltigen CSS Layout geht nicht.

  • Hallo.






    Ich habe ein 3 spaltiges Box Layout mit Header und Footer geschrieben.
    Es funktioniert, doch wenn ich die Bereiche mit einem Rahmen versehen
    will, dann geht das Layout nicht mehr.






    Ich will beim Header oben, unten, links und rechts einen Rahmen, bei der
    linken Spalte links und rechts einen Rahmen, bei der rechten Spalte
    links und rechts einen Rahmen, und beim Footer oben, unten, links und
    rechts einen Rahmen.






    Seit einiger Zeit geht das mit den Rahmen bei mir nicht mehr, davor hat` s geklappt.






    Hier mal der CSS Code :





    Bitte helft mir! Besten Dank. ?(

  • Hey,
    zum ersten: Gratulation! Du hast es als einer der ersten Neulinge egschafft, direkt die Formatierungs-BBs für Code zu nutzen :D
    Aber wofür sind diese endlosen Leerzeilen gedacht??? ?)


    Zum zweiten: ein CSS border braucht grundsätzlich DREI Angaben: Dicke, Art und Farbe. Du hast nur zwei, Dicke und Art, die Farbe fehlt, deswegen wird der Befehl ignoriert.
    Zudem gibt es bei border auch eine Kurzschreibweise. Wenn du überall Rahmen haben willst, reicht einfach ein

    CSS
    #header {
        border: 2px solid black;
    }


    Zum dritten: In HTML 5 (was zu nutzen empfohlen wird), gibt es neue Tags für die Inhaltsaufteilung, uA

  • Dein Problem: Der Rahmen zählt extra. Dh. du hast 1000px Platz, du nimmst aber 2 * 200px + 600px (Inhalt) + 4 * 2px (Rahmen) = 1008px. Das geht nicht, da wird umgebrochen.
    Dafür gibt es aber bei CSS 3 den background-clip, funktioniert ab IE 9 und überall sonst:

    CSS
    #rightcolumn {
        background-clip: content-box; /* Mehr Info: http://www.w3schools.com/cssref/css3_pr_background-clip.asp (en) */
        /* Anderes CSS ... */
    }


    Übrigens hier: Ein Beispiel
    HTML 5 Struktur des body, und Farbaufteilung, damit du weißt, wie es geht. Allerdings ohne Rahmen. Viel Spaß!

  • Naja.. :x
    Um beim Box-Modell zu pfuschen gibt es in css3 eine sehr schöne Möglichkeit anzugeben ob
    a) Paddings
    b) Paddings und Borders
    nicht zur Breitenangabe des Elements dazu gerechnet werden sondern in diese einberechnet.


    Beispiel: http://jsfiddle.net/TSSY2/1/

Jetzt mitmachen!

Sie haben noch kein Benutzerkonto auf unserer Seite? Registrieren Sie sich kostenlos und nehmen Sie an unserer Community teil!