Hoi John,
Ik heb nog eens diep in de ogen van je site gekeken, en ben nu bang dat ik je aan wat werk ga helpen...
Ontwerp & uitvoering
Als het ontwerp van een webpagina (zeg: de css-layout en correcte css-code) in orde is, komt de uitvoering (zeg: de correcte html) om de hoek kijken om de juiste weergave op het scherm te toveren. Om met het laatste te beginnen:
Een check op correcte html kan je doen met de
html-validator (en eigenlijk niet pas op het laatst, maar al regelmatig tijdens het ontwerpproces). *) In het geval van de homepage
www.demyse.nl is het
resultaat van de html-validator, dat er zo'n kleine 30 html-fouten in zitten.
Hoe minder errors, hoe meer kans op een goede vertoning in alle browsers!

Maar 100% zekerheid krijg je niet, want IE is er ook nog...
Voor de css is er ook een prima online tester,
de css-validator. We zien dat
de css-validator struikelt over regel 12 van de pagina (waardoor ook niet toegekomen kan worden aan testen van verdere stylesheets: "Geen style sheet gevonden". Los getest heeft de standaard style.css
ook een foutje).
Wat is er met regel 12 (de regel met de verwijzing naar style-ie7.css!) aan de hand? - En dit is meteen het antwoord op je vraag:
Met regel 12 zelf is niet aan de hand, maar het gevaar was al eerder opgetreden.
Er staat:
HTML:
<link rel="stylesheet" href="styles/style.css" />
<style type="text/css">
<!--[if IE 7]>
<style type="text/css" media="all">@import "styles/style-ie7.css";</style>
<![endif]>
<!--[if IE 8]>
<style type="text/css" media="all">@import "styles/style-ie7.css";</style>
<![endif]-->
</style>
</head>
De Conditional Comments voor IE horen niet zelf binnen een <style>-tag te staan, en het moet zijn:
HTML:
<link rel="stylesheet" type="text/css" href="styles/style.css" />
<!--[if IE 7]>
<style type="text/css" media="all">@import "styles/style-ie7.css";</style>
<![endif]>
<!--[if IE 8]>
<style type="text/css" media="all">@import "styles/style-ie7.css";</style>
<![endif]-->
</head>
Maar hiermee zijn we er jammer genoeg nog niet. Je schrijft:
De site draait goed inmiddels, echter weer Explorer.
Was het maar waar!

Want ook in bv. Firefox gaat het niet goed, als je bv. één klikje op Inzoomen geeft om de letters een beetje groter te kunnen zien.
- Hier een screenshot (iets verkleind) met wat er dan gebeurt.
Ook in FF loopt de tekst nu in de rechterkolom uit z'n achtergrond. Maar ook de twee middenkolommen zijn niet pluis. Hier wordt de tekst afgehakt bij het footer-image. - De tekst is er nog wel, zoals je kan zien aan het geselecteerde stukje, maar omdat het zwarte letters zijn tegen een zwarte achtergrond, vallen die compleet weg. En zou je de letters een andere kleur geven, dan is nog steeds het tekstgedeelte verdwenen dat onder/achter de footer zit.
Waarom?
Je hebt geprobeerd alles zo nauwkeurig mogelijk (pixelgewijs) in je styles vast te leggen. En waarschijnlijk ben je daarbij vernaggeld door Dreamwaever of een andere "WYSIWYG" html-editor. Ze zeggen:
What You See Is What You Get
En dat klopt alleen als je het heel letterlijk neemt: wat je ziet is wat JIJ krijgt. En niet: wat je ziet is wat MEN krijgt!
Wat ze er niet bij vertellen (want dat verkoopt minder goed) is dat de uitdrukking eigenlijk hoort te zijn:
What You See Is What You Get ...
... ALS:
iemand de webpagina bekijkt op hetzelfde Operating Systeem, met dezelfde (versie) browser, met dezelfde resolutie, met hetzelfde Window-formaat, en met dezelfde lettergrootte.
(en misschien vergeet ik er nog eentje)
Zodra één of meer van deze variabelen verandert, KAN het resultaat hetzelfde zijn, maar het HOEFT NIET. Een webpagina bouwen is dus lang niet zo eenvoudig als ze je graag willen laten geloven. Ook voorgebakken sjablonen ("u hoeft helemaal geen code te kennen, wij regelen alles voor u") zijn lang niet altijd te vertrouwen, en moet je degelijk testen op cross browser bestendigheid en andere zaken.
Alleen is de nattigheid, dat je als aankomend webbouwer juist zo'n programma gebruikt, omdat je (nog)
niet weet wat/hoe je moet testen, en welke veranderingen je hoe moet aanbrengen opdat het wel werkt zoals jij wilt...
- Ik zou eigenlijk wel eens willen weten hoeveel webontwerp-programma's met "u hoeft er niets van af te weten om iets moois te maken" op het doosje na twee keer proberen tot een hevig :evil: hebben geleid, en vervolgens onverrichterzake ergens in een la zijn beland... - Maar het product is in elk geval verkocht!

Maar genoeg gemopperd, terug naar je site.
Eén van de belangrijke ontwerp-principes voor een webpagina is, dat je (in het algemeen) voor een <div> container géén hoogte mag opgeven als er tekst in zit. Want als de tekst aangepast wordt (vergroot/verkleind, of: andere tekst), moet de <div> / kolom mee kunnen rekken of krimpen.
Bij jouw 4-koloms opzet betekent dat, dat de footer altijd automatisch onder de langste kolom moet komen (en welke dat gaat worden, weet je niet altijd tevoren).
Hoe dat te bereiken?
Daarover graag een volgende keer meer: wordt vervolgd!
Met vriendelijke groet,
CSShunter
*) Het is in het Engels, maar een serie tips over het ontwerpproces kun je vinden in "
Golden Rules of CSS".