Jerrythafast
Gebruiker
- Lid geworden
- 8 dec 2007
- Berichten
- 19
Ik heb ruime ervaring met HTML en CSS, maar hier kom ik toch even niet uit.
Ziehier de site-in-aanbouw waar het om gaat, deze link doet het alleen als mijn computer aan staat: http://213.17.48.167/ppinfo
Ik heb met de volgende CSS-code de <body> de hele viewport doen vullen, maar kijk gerust in de broncode voor een volledig beeld:
Omdat ik nog de grootste moeite heb tabelloos te stylen maak ik de lay-out in tabellen. In FF zul je zien dat de pagina precies in de viewport past. De menubalk neemt predies de hoogte over, evenals het 'tekstscherm' aan de linkerkant van het venster. Dit doe ik door de cel waar de tekst in staat height="100%" te maken. Echter, in IE heb ik gevonden dat wanneer ik een <td> met height="100%" maak, deze 100% niet het scherm uitvult, maar de hoogte van de viewport overneemt. Dus als je viewport 600 pixels hoog is, wordt de menubalk 600pixels+onderkant+bovenkant hoog, in plaats van de benodigde 600 pixels. Dit heeft als gevolg de volgende gebreken:
-De pagina wordt uitgerekt door de menubalk. Deze is op deze manier natuurlijk te lang.
-Het tekstscherm is niet even hoog als de menubalk. Dit komt doordat de onder- en bovenkant van het tekstscherm niet zo groot zijn als de onder- en bovenkant van de menubalk. Het tekstscherm is echter nog steeds te hoog.
-Het grijze gebied van het tekstscherm, waar de eigenlijke tekst in komt, is iets minder hoog dan de lijst. Dit komt doordat de zijkanten van de lijst apart zijn opgebouwd uit een boven- en onderkant en een midden van hoogte '100%'.
Mijn vraag: hoe kan ik ervoor zorgen dat IE een <td> met height="100%" de pagina doet uitvullen in plaats van de 100% domweg te vervangen door de hoogte van de viewport?
N.b. voor zij die dit niet weten/doorhebben: je kunt tabellen prima 100% hoog maken met style="height: 100%". De tabel vult dan de hoogte van het element waar het in staat. Op mijn pagina is dat element <body>, en om <body> de hoogte van de viewport te geven moet je met bovenstaande CSS <body> en <html> óók 100% hoogte geven. Want <html> staat in... de viewport!
Ziehier de site-in-aanbouw waar het om gaat, deze link doet het alleen als mijn computer aan staat: http://213.17.48.167/ppinfo
Ik heb met de volgende CSS-code de <body> de hele viewport doen vullen, maar kijk gerust in de broncode voor een volledig beeld:
HTML:
<style type="text/css">
html, body{
margin: 0;
padding: 0;
border: none;
height: 100%;
}
</style>
-De pagina wordt uitgerekt door de menubalk. Deze is op deze manier natuurlijk te lang.
-Het tekstscherm is niet even hoog als de menubalk. Dit komt doordat de onder- en bovenkant van het tekstscherm niet zo groot zijn als de onder- en bovenkant van de menubalk. Het tekstscherm is echter nog steeds te hoog.
-Het grijze gebied van het tekstscherm, waar de eigenlijke tekst in komt, is iets minder hoog dan de lijst. Dit komt doordat de zijkanten van de lijst apart zijn opgebouwd uit een boven- en onderkant en een midden van hoogte '100%'.
Mijn vraag: hoe kan ik ervoor zorgen dat IE een <td> met height="100%" de pagina doet uitvullen in plaats van de 100% domweg te vervangen door de hoogte van de viewport?
N.b. voor zij die dit niet weten/doorhebben: je kunt tabellen prima 100% hoog maken met style="height: 100%". De tabel vult dan de hoogte van het element waar het in staat. Op mijn pagina is dat element <body>, en om <body> de hoogte van de viewport te geven moet je met bovenstaande CSS <body> en <html> óók 100% hoogte geven. Want <html> staat in... de viewport!
Laatst bewerkt: