Archief - HTML/CSS: Vaste afmeting vs variabele afmeting.

Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.

John Berry

Legacy Member
Goeiemorgen,

Ik worstel al geruime tijd met volgend issue:
Ik ben een site opgesteld in tabellen in een meer gestandaardiseerde vorm met CSS. De ruwe layout beschrijf ik als volgt (ik kan gen screenshots uplaoden van hier uit):

1. Een frame rond de hele pagina zodat de pagina de hele hoogte (op zn minst) en 96% van de breedte van het browservenster beslaat. (Dat ik ook een rand megeef)

2. Een header even breed als het frame, met aan vaste hoogte van 220px.

3. Daaronder LINKS een menu met vaste breedte van 150px.

4. rechts van dat menu een inhoudssectie die de volledige rest van de pagina moet vullen.

(5. een footer regel met vaste hoogte 20 px)

Na vele pogingen is dit mijn beste benadering, maar ik weet dat dit gewoon
niet logisch is:

HTML:
HTML:
<body>
<div id="wrap"> 
  <div id="body"> 
    <div id="main"> 
		<div id="menu"> MENU </div>
  		<div id="header"> HEADER </div>
		
		MAIN CONTENT    
	 
	</div>
  </div>					
</div>
</body>

CSS:
Code:
body {
  font-family: Verdana, Geneva, Arial, helvetica, sans-serif;
  background-color: #444444;
}
	
#wrap {
	position: relative;
	border-style: outset;
	border-width: 1px;
	width: 96%;
	left: 2%;
	right: 2%;
	height: 98%;
	}
div#body {
	padding-top: 0px;
	position:absolute;
	width: 100%;
	height: 100%;
	}
#header {
	position: absolute;
	height: 220px;
	width: 100%;
	background-image: url('../../gfx/header7.jpg');
	}

#menu {
	position: absolute;
	width: 150px;
	height: 100%;
	margin-top: 0px;
	background-color: #939393;
	background-image: url('../../gfx/bg-industrial-left.jpg');
	background-repeat: no-repeat;
	background-position: bottom left;
	}
	
#main {
	width: 100%;
	height: 100%;
	margin-left: 0px;
	margin-top: 0px;
	background-color: #EAEAEA;
	background-image: url('../../gfx/bg-industrial.jpg');
	background-repeat: no-repeat;
	background-position: bottom right;
	
	}

Kan iemand mij tot betere inzichten brengen?

Cheers, J.B.

UnD3RD0G

Legacy Member
3. Daaronder rechts een menu met vaste breedte van 150px.

4. rechts van dat menu een inhoudssectie die de volledige rest van de pagina moet vullen.

klopt voglens mij niet, komt u menu niet links?

UnD3RD0G

Legacy Member
extra :

onderstaand vind je de code terug die ik denk dat je nodig hebt.
ik heb er ID's opgezet+ inline CSS zodat je makeklijk ziet wat wat doet, en achteraf de CSS makkelijk extern kan zeteen

Code:
<body style="margin:0;padding:0;">


<div id="borderFrame" style="border:4px solid red;">
	<div id="header" style="width:100%; height:220px; background-color:#999999"> header </div>
    
    <div id="rechtMenu" style="float:left; width:150px; height:150px; background-color:#00FF00">even height van 150px op gezet</div>
    <div id="content" style="float:left; background-color:#FF0000;">Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent odio. Ut vel augue imperdiet libero accumsan porttitor. Mauris non arcu. Vestibulum ultricies tellus in lorem. Nam libero leo, gravida vel, tempus sed, aliquet vitae, nibh. Nunc auctor elit quis est. Maecenas fringilla elit at ipsum. Duis ut neque a nulla vulputate auctor. Cras quis sem. Praesent purus. Mauris lorem lorem, commodo id, rutrum in, sodales ullamcorper, mi. Donec varius lorem non mauris. Nulla rutrum, est quis pulvinar porttitor, eros sem vestibulum orci, quis placerat erat nunc eleifend ipsum. Quisque augue nibh, hendrerit sed, porttitor eget, luctus quis, ligula. Proin non lacus in libero pharetra consequat. Sed pulvinar, magna sed aliquam feugiat, justo est porta velit, id auctor augue ligula sit amet dolor. Ut vel lacus a eros sollicitudin accumsan. Duis placerat egestas nisi. Praesent vitae erat ut dolor mollis tempor. 

Integer elementum tortor eu velit. Maecenas et tortor in felis semper fermentum. Maecenas tempus lorem rutrum libero. Fusce leo quam, hendrerit quis, ultricies eu, bibendum pharetra, elit. Pellentesque in ligula. Aenean suscipit iaculis ante. Suspendisse potenti. In hac habitasse platea dictumst. Donec fringilla est eu pede. Proin sagittis suscipit metus. Praesent lacinia neque quis turpis. Praesent convallis, sapien nec gravida blandit, dolor justo vehicula mi, quis ultrices pede ante non est. Fusce eget enim quis urna pretium nonummy. Praesent adipiscing suscipit orci. In erat lacus, lacinia eget, convallis nec, dictum ut, dolor. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent mattis bibendum ligula. Integer quis nisi. Aliquam vel justo. Sed nec dui. 

Praesent ornare risus eget nunc. Aenean 
</div>
	


<div id="footer" style="clear:both; background-color:#0000FF">FOOTER</div>
</div>

</body>
</html>

heb het snel in elkaar gestoken,
is het dit wat je zoekt?

John Berry

Legacy Member
Howdy, alvast bedankt voro de moeite/hulp/reply.
Lijkt er heel goed op, maar de inhoud zelve komt met uw code onder de menu terecht, niet rechts ervan.
Als ik ervoor zorg dat de breedte van de menu en zo procentueel wordt uitgedrukt is er geen probleem. Maar die moet nu 150 breed en de rest moet meerekken.
ZOiets:
Code:
|          head                                |
[U]|                                              |[/U]
| menu   |    content                          |
|        |                                     |
[U]|        |                                     |[/U]
[U]|      foot                                    |[/U]
Waarbij:
head, altijd 220 hoog
menu: altijd 150 breed
content: meerekken
foot: altijd20 hoog.

en het geheel in aan container die tov het browservenster 96 (of 97 %) breed is en de hele hoogte beslaat, maar da's detail, valt ook te regelen met de margins van de body.

UnD3RD0G

Legacy Member
dan zet je de menu IN de content, met een float left element
dan is het normaal ok.
Dan amg je trouwens alle positioning op content afhalen

Code:
<body style="margin:0;padding:0;">


<div id="borderFrame" style="border:4px solid red;">
	<div id="header" style="width:100%; height:220px; background-color:#999999"> header </div>
    
    
    <div id="content" style="background-color:#FF0000;">
<div id="rechtMenu" style="float:left; width:150px; height:150px; background-color:#00FF00; margin-right:10px;margin-bottom:10px;">even height van 150px op gezet</div>

Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent odio. Ut vel augue imperdiet libero accumsan porttitor. Mauris non arcu. Vestibulum ultricies tellus in lorem. Nam libero leo, gravida vel, tempus sed, aliquet vitae, nibh. Nunc auctor elit quis est. Maecenas fringilla elit at ipsum. Duis ut neque a nulla vulputate auctor. Cras quis sem. Praesent purus. Mauris lorem lorem, commodo id, rutrum in, sodales ullamcorper, mi. Donec varius lorem non mauris. Nulla rutrum, est quis pulvinar porttitor, eros sem vestibulum orci, quis placerat erat nunc eleifend ipsum. Quisque augue nibh, hendrerit sed, porttitor eget, luctus quis, ligula. Proin non lacus in libero pharetra consequat. Sed pulvinar, magna sed aliquam feugiat, justo est porta velit, id auctor augue ligula sit amet dolor. Ut vel lacus a eros sollicitudin accumsan. Duis placerat egestas nisi. Praesent vitae erat ut dolor mollis tempor. 

Integer elementum tortor eu velit. Maecenas et tortor in felis semper fermentum. Maecenas tempus lorem rutrum libero. Fusce leo quam, hendrerit quis, ultricies eu, bibendum pharetra, elit. Pellentesque in ligula. Aenean suscipit iaculis ante. Suspendisse potenti. In hac habitasse platea dictumst. Donec fringilla est eu pede. Proin sagittis suscipit metus. Praesent lacinia neque quis turpis. Praesent convallis, sapien nec gravida blandit, dolor justo vehicula mi, quis ultrices pede ante non est. Fusce eget enim quis urna pretium nonummy. Praesent adipiscing suscipit orci. In erat lacus, lacinia eget, convallis nec, dictum ut, dolor. Lorem ipsum dolor sit amet, consectetuer adipiscing elit. Praesent mattis bibendum ligula. Integer quis nisi. Aliquam vel justo. Sed nec dui. 

Praesent ornare risus eget nunc. Aenean 
</div>
	


<div id="footer" style="clear:both; background-color:#0000FF">FOOTER</div>
</div>

</body>
</html>


dit zou moeten zijn wat je zoekt

John Berry

Legacy Member
Dat is het inderdaad, dankjewel.
En kan er iets geregeld worden zodat de menuruimte doortrekt zodat hij gekneld zit tussen header en footer?. Zodat de groene zone van de onderkant van de header naar de bovenrand van de footer loopt zonder dat daar nog 'content' tussen zit?
Het archief is een bevroren moment uit een vorige versie van dit forum, met andere regels en andere bazen. Deze posts weerspiegelen op geen enkele manier onze huidige ideeën, waarden of wereldbeelden en zijn op sommige plaatsen gecensureerd wegens ontoelaatbaar. Veel zijn in een andere tijdsgeest gemaakt, al dan niet ironisch - zoals in het ironische subforum Off-Topic - en zouden op dit moment niet meer gepost (mogen) worden. Toch bieden we dit archief nog graag aan als informatiedatabank en naslagwerk. Lees er hier meer over of start een gesprek met anderen.
Terug
Bovenaan