{{indexmenu_n>100}}
====== kukkis: 2 Spalten, feste Breite, var. Höhe ======
[[http://forum.phpwcms.org/viewtopic.php?p=111983#p111983]] \\
- **Autor:** kukki //(Update: 24.06.09)//
===== Anforderung: =====
* Header soll am obersten Rand der Viewport stehen. (115px)
* Left und Main sollen optisch nebeneinander stehen
* Der Scrollbalken soll dynamisch im Main erzeugt werden, falls gewünscht, wie im Beispiel.
* Footer soll untem im Viewport stehen. (20px)
* Bei F11-Taste soll die Konstruktion sich diesem Bildschirm automatisch anpassen.
* CSS-Code soll konform sein! [[http://www.grosse-strasse-strausberg.de|Live-Beispiel siehe hier]]
Gewählt habe ich eine feste Breite von 980px, so dass 1024 x YYY bedient werden kann.
==== CSS ====
Folgende Lösung hat bisher einem Test standgehalten und ist stabil und mit nachfolgenden Codezeilen CSS-konform:
--> diesen Codeschnipsel in den Header der Vorlage einstellen:
Vorteil: Man kann dem #leftBlock einen eigen spaltengerechten Hintergrund ohne Tricksereien mit Faux Columns verpassen */
#leftBlock { height: expression((document.body.clientHeight-157) + "px");}
Soll #leftBlock ebenfalls mit **height: expression** angesteuert werden, damit dieser bis zum footer fließen kann,
ist dieser Block mit **position:absolute** zu behandeln.
**Eine Empfehlung:** Wenn jemand den IE6 ohne Probleme bedienen will, sollten CSS-Kurzschriften vermieden werden.
Macht zwar Mühe, aber der IE6 läuft stabil!
/* selbstzentrierende Seite 980px breit, 100% hoch*/
html, body {
margin: 0;
padding: 0;
border: 0;
height: 100%;
min-width: 100%; }
/* der komplette Bildschirmbody */
body{
margin: 0;
padding: 0;
overflow:hidden; /*weg ist der Scrollbalken*/
}
#container { position: absolute;
background-color: #006400;
margin: 0px 0px 0px -490px;
left: 50%;
width: 980px; /* Breite der gesamten Website */
height:100%; /* sichtbare Hoehe der Website */
}
#headerBlock {
height: 115px;
margin: 0;
background: #FF9F9F ;
}
#mainBlock {
position: absolute;
background-color: #ffff99;
top: 115px;
bottom: 30px;
right: 0;
padding: 5px 15px 5px 5px;
margin-left: 220px;
overflow: auto; /*Scrollbalken nur für den #mainBlock*/
}
#leftBlock
{
position: absolute;
top: 115px;
width: 200px;
bottom: 30px;
}
#footerBlock {
position: absolute;
bottom: 2px;
text-align: left;
color: #ffffff;
width: 980px;
height: 30px;
margin: 0;
padding: 0;
background-image: url(/picture/Fuss.jpg);
background-repeat: repeat-x;
}
#footerBlock a{ color:#f2f2f2;}
{{:deutsch:templates:2spalten_feste-breite_var-hoehe_01.jpg?84x120}}
=== Vorlage ===
Im Seitenlayout wird unter **Seitenaufbau:** die Einstellung **[x] CSS DIV** gewählt.
Dann greifen automatisch die folgenden CSS-Klassen aus der frontend.css:
#container
#headerBlock
#mainBlock
#leftBlock
#rightBlock
#footerBlock
In der Vorlage werden folgende Bereiche verwendet:
Kopfzeile
Haupt
Fußzeile
links
rechts
In diesen Bereichen werden die Content-Platzhalter
{HEADER}
{CONTENT}
{FOOTER}
{LEFT}
{RIGHT}
verwendet.