Validation at all costs!

Ik ben een website aan het maken, en ik ben, zoals dat heet, getikketakt om hem te laten valideren.

Probleem is dat er op de homepagina een flash-animatie staat (ik weet het, ik weet het, maar ‘t is allemaal in the best possible taste). En dat een flash file standaard zo’n <embed>-tag heeft voor Netscape. En dat die niet valideert.

De oplossing, zoals een tijd geleden beschreven op A List Apart, is om er een hoop uit te kieperen. Dit is de standaard-html zoals gegenereerd door Flash zelf:

<object classid="clsid:d27cdb6e-ae6d-11cf-96b8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/ cabs/flash/swflash.cab#version=6,0,0,0" width="750" height="96" id="home" align="middle">
<param name="allowScriptAccess" value="sameDomain" />
<param name="movie" value="home.swf" />
<param name="menu" value="false" />
<param name="quality" value="high" />
<param name="bgcolor" value="#ffffff" />
<embed src="home.swf" menu="false" quality="high" bgcolor="#ffffff" width="750" height="96" name="home" align="middle" allowScriptAccess="sameDomain" type="application/x-shockwave-flash" pluginspage="http://www.macromedia.com/go/getflashplayer" />
</object>

…turns out dat dit het even goed doet:

<object type="application/x-shockwave-flash"
width="750"
data="home.swf"
height="96">
<param name="movie" value="home.swf" />
</object>

Behalve dat de .swf niet meer streamt in Internet Explorer, maar dat is rap opgelost door een klein filmpje van één frame te maken met daarin een ActionScriptje dat een andere swf oproept, en dan via een parameter meer te geven:

<object type="application/x-shockwave-flash"
width="750"
data="loader.swf?path=home.swf"
height="96">
<param name="movie" value="loader.swf?path=home.swf" />
</object>

En dat valideert allemaal. Voor de goede orde maak ik nog een alternieve <img /> om tussen de <object>-tags te plakken, en alles werkt perfect zoals het zou moeten, én het valideert.

Yay.

5 reacties op “Validation at all costs!”

  1. Hmm, is wel leuk als dat zo gaat! Mag ik weten wat je bronnen zijn want tot nu toe dacht ik dat het enkel met die Flash-saté lukte? Paar URLekes zou geen kwaad kunnen…

  2. Mja, tuurlijk 🙂 Ik meende mij alleen te herinneren dat ik dat omslachtig vond. En nu weet ik weer waarom: die preloader. Maar gij slaagde er natuurlijk weer in om dat hier te laten klinken lijk het niks is 😉

Reacties zijn gesloten.