Veel gestelde Vragen Wat vind je op deze Site? De Muziek Systeemeisen Navigatie op de Site Browser-snekjes

Browser-snekjes

Toen ik voor het eerst met Cascaded Style Sheets in aanraking kwam, zag ik CSS als een handige manier om tekst- en tabel layout onder controle te krijgen. Er bleek echter veel meer te kunnen met CSS, waaronder een centrale definitie van de layout van je website.

De vorige versie van de DOS Amigos Homepage was helemaal gebaseerd op geneste tabellen. Een nadeel was, dat je bij update en onderhoud je tekst tussen alle tabelcelmarkeringen nogal moeilijk terug kon vinden. Dat maakte ook kleine updates een hele klus. Bovendien was ik niet tevreden met de navigatie. Ik wilde de grotere onderdelen van de site sneller bereikbaar hebben, liefst met een topmenu. Verder zaten er een paar heel lange documenten in die vroegen om een betere navigatie met een menu.

Zodoende was ik toe aan een flinke update van de site.

Ik heb eerst een tijde gespeeld met database gestuurde websites met een content management systeem zoals Joomla en Drupal. Dat bleek voor mij een brug te ver: ik snap graag wat ik doe en die virtuele toestanden rond een database waren voor mij moeilijk te volgen: ik wist niet waar mijn informatie bleef en je moest zo ontzettend veel metadata toevoegen.

Een van de eisen voor een content management systeem is de beschikbaarheid van een webserver zoals Apache en MySQL en PHP ondersteuning. Wel, dat zat er in mijn eenvoudige webspace van @home niet in. Ik zou naar een hosting provider moeten verhuizen, met alle gevolgen van dien voor iedereen ter wereld die de DOS Amigos Homepage gebookmarkt heeft.

Bovendien is het knap lastig om in Joomla en Drupal je eigen layout te realiseren. Er waren templates genoeg, maar geen van allen voldeed aan mijn eigen idee. Zelf maken vereist diepgaande kennis van de materie, best interessant maar ik wilde de website op korte termijn kunnen verbouwen.

Na een paar door onbekende oorzaak corrupt geraakte MySQL databases (je kunt dan niets anders meer dan uithuilen en opnieuw beginnen) hield ik dat traject maar voor gezien.

CSS leek mij een beter overzich te bieden: een tabelloze layout met DIVjes maakte het in ieder geval eenvoudiger om de eigenlijke content terug te vinden bij upgrade en onderhoud. Een afweging van het werk dat je moest doen om mijn oude website om te zetten in een content management systeem of CSS gestuurde layout viel weliswaar niet hard in het voordeel van CSS uit, maar het overzicht maakte veel goed.

Zodoende studeerde ik een tijd op de mogelijkheden van CSS en ontwierp mijn eerste layout in stappen. Dat alles met behulp van Firefox en ingebouwde web developer extensies. Het resultaat was prima, de gevolgen van de instellingen kon je keurig volgen.

Een goede tip van menig websitegoeroe is: test je website op alle browsers waarvan je verwacht dat de mensen die zullen gebruiken. Vooral voor CSS ondersteuning is dat een absolute must. Specifiek Internet Explorer versies blijken namelijk snekjes te hebben die je prachtige layout compleet verpesten. Ik heb daarom de Internet Explorer versies vanaf 5.5 gedownload en op het systeem gezet en daarmee de layouts getest.

Wat een zooi! Iedere Internet Explorer versie lager dan 7 deed het anders, maar allemaal deden ze het fout. Ik maakte kennis met tal van bugs die het definieren van een layout moeilijk maken. Er waren tal van workarounds, maar de meeste bleken niet onder alle omstandigheden te werken. Gelukkig kent Internet Explorer een eenvoudige versiedetectie, die je mooi kunt gebruiken om zogenaamde "conditional CSS rules" aan te sturen, een speciaal bestandje voor iedere Internet Explorer versie met aangepaste regels van de "standaard" CSS.

Je maakt die aanpassingen volgens de "trial and error" methode, met het schroeven aan de parameters van de CSS regels. Net zolang totdat het voor alle browsers een beetje hetzelfde er uit ziet en de pagina's hetzelfde reageren. Dat is grotendeels gelukt, ook al zijn er nog wel wat snekjes over.

Een bloemlezing:

Eens te meer blijkt het weer: "Al is de (CSS) norm nog zo snel, de realiteit achterhaalt hem wel!" Maar er is hoop voor de toekomst: de CSS ondersteuning van Internet Explorer 7 is voor deze site in ieder geval goed. Tot de volgende technologiesprong, vrees ik.

Een ander snekje, dat iets minder met browsers, maar wel met de karakterweergave te maken heeft is de karakterset-bug. Apostrophes, quotes en andere speciale tekens blijken als rommelig setje karakters te verschijnen. Er zat niks anders op dan alles te corrigeren.

En o ja, ik zou nog bijna de Grootste Browser Snek vergeten die je gegarandeerd tegenkomt, al dan niet in samenwerking met een firewall of pop-up blocker.

Als je een plug-in gebruikt om de MIDI af te spelen zal het niet zelden voorkomen dat de browser je vriendelijke verzoek tot musiceren verijdelt. Dit kan ik niet voorkomen. Er zit niks anders op dan het afspelen van de muziek dan maar zelf vrij te geven. Vaak is een keertje genoeg als je tenminste de optie kiest om voor de gehele site de "verdachte" inhoud toe te staan.

Een van de laatste browser snekjes was de beroemde plugin Quicktime, die opeens weigerde om mime types voor midi af te spelen. Dientengevolge moet ik alles omzetten naar 128 mbps MP3 formaat. Gelukkig heb ik voldoende ruimte.

Wat ik zopas ontdekte: Veel browsers hebben hun eigen PDF viewer. Niet alle viewers werken echter even goed, soms verdwijnen er karakters of treedt er vervorming op. De enige echte Acrobat Reader lost dit op, maar je moet dan wel handmatig downloaden.

Onlangs ontdekte ik dat Chrome het autostart=false attribuut van het embed commando negeert. Ieder mp3tje begint dus direct te spelen. Nu is dat niet erg als er maar een media player op de pagina staat, maar als er meer zijn, zoals in de pagina's van de microfoonavonturen, dan speelt alles door elkaar. Hier blijkt geen oplossing voor te zijn. Mijn excuses, het ligt aan Chrome. Gebruik Firefox waar nodig.