Was dir evtl. auch weiterhelfen könnte sind die Pseudoelemente :before und :after , wenn es rein um den Rahmen geht.
Werde mich später mit einem Code-Beispiel nochmal melden
So, hoffe ich habe das ganze richtig verstanden:
HTML
<body>
<div class="page-row page-row-expanded">
<div id="wrapper" class="grid rahmen-top">
<div class="abstand-top ">
Header
Content
</div>
</div>
</div>
<div class="page-row">
<div id="footer" class="rahmen-top">
Footer
</div>
</div>
</body>
Alles anzeigen
Hier habe ich nur einen Rahmen um den Inhalt gelegt, dem ich die Pseudoelemente übergebe.
CSS
* {
margin : 0;
padding : 0;
}
html, body {
height : 100%;
}
body {
display : table;
width : 100%;
}
.page-row {
display : table-row;
height : 1px;
}
.page-row-expanded {
height : 100%;
}
.grid {
width : 960px;
position : relative;
margin : 0 auto;
padding-left : 5px;
padding-right : 5px;
}
.rahmen-top {
border-top : 3px solid #000;
}
.abstand-top {
margin-top : 10px;
}
#footer {
line-height : 2em;
}
#wrapper {
height : 100%;
}
#wrapper:before {
content : "";
position : absolute;
left : 0;
top : 0;
bottom : 0;
width : 3px;
background : #000;
z-index : 1;
}
#wrapper:after {
content : "";
position : absolute;
right : 0;
top : 0;
bottom : 0;
width : 3px;
background : #000;
z-index : 1;
}
Alles anzeigen
Oben habe ich nicht viel verändert, nur der Klasse .grid wurde ein Innenabstand mitgegeben, damit sie sich mit dem Rahmen nicht überlappt.
Zudem wurde die jetzt sinnlose Klasse .rahmen einfach rausgenommen. Der Rahmen wird hier durch die von mir neu hinzugefügten Pseudoelemente
:after und :before umgesetzt. Hoffe das hilft dir weiter
mfg Nita