Op basis van Res-q's opzet:
HTML:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
| <!DOCTYPE HTML PUBLIC "-//W3C//DTD HTML 4.01//EN" "http://www.w3.org/TR/html4/strict.dtd">
<html>
<head>
<META http-equiv="Content-Type" content="text/html; charset=ISO-8859-1">
<title>test</title>
</head>
<body>
<h1>header</h1>
<ul id="menuList">
<li><a href="#">link1</a></li>
<li><a href="#">link2</a></li>
<li><a href="#">link3</a></li>
</ul>
<div id="bodyText">
Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Donec facilisis,
orci vitae imperdiet accumsan, justo lectus iaculis sapien, in imperdiet
eros ligula id tortor. Nullam vel magna eu eros adipiscing varius. Curabitur
eros mi, auctor mattis, tempor a, varius eu, nibh. Aliquam sit amet lectus.
Duis in lectus. In mattis dolor. Donec feugiat eros vel urna. Vestibulum vitae
purus. Nullam sapien purus, volutpat ut, suscipit et, sodales vitae, dolor.
Fusce tellus nunc, convallis et, rutrum et, facilisis ut, est. Ut arcu. Nulla
sed eros.
</div>
<div id="footer">footer</div>
</body>
</html> |
Cascading Stylesheet:
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
| HTML, BODY {
height: 100%; width: 100%;
padding: 0px; margin: 0px;
overflow: hidden;
}
H1 {
height: 120px;
width: 100%;
background-color: lightblue;
}
UL#menu {
float: left;
width: 170px;
height: 100%;
background-color: lightgreen;
}
DIV#bodyText {
background-color: yellow;
height: 100%;
overflow: auto;
}
DIV#footer {
position: absolute;
height: 30px;
left: 0; bottom: 0;
background-color: orange;
} |
dit zou redelijk moet werken, en voor zover ik kan zien de wensen van de TS oplossen... enkel de footer kan mogelijk nog een probleempje opleveren, omdat juist dat misschien wat moeilijker wordt, en de specifieke boxmodel-problemen oplevert als je bv margin-bottom gaat gebruiken om de hoogte van het menu en bodyText niet helemaal tot onderop de pagina te laten lopen ...
wat tips:
Strip je code van alle overbodige tags:
bij <DIV><UL>[LI's]</UL></DIV> kun je ook gewoon direkt het UL-element positioneren ...
gebruik zoveel mogelijk semantisch correcte HTML en hierin is een DIV of SPAN eigenlijk een none-item.
Gebruik in CSS ook liever relatieve positionering dan absolute positionering : laat de elementen _zelf_ het werk doen en probeer niet juist teveel voor hen te specificeren ... hoe 'absoluter' je werkt, hoe sneller je in de problemen komt
Intelligente mensen zoeken in tijden van crisis naar oplossingen, Idioten zoeken dan schuldigen