Noting that this page was reached by the search query "Strict XHTML Applets", a brief guide to what I've done along these lines.
I started with Hixie's Embedding flash without <embed>, which nests <object /> tags, but suffers from parameter duplication, and, IIRC, unless I had things back-to-front, it also leaves empty place-holders for the "other platform" applet in some browsers. By using IE conditional comments in a sneaky fashion, one only need duplicate the opening <object> as follows (code based upon that in my N-body applet page):-
<!--[if IE]>
<object archive="nbodyzip.zip" type="application/x-java-object"
code="Nbody.class" width="250" height="150" title="λ Serpentis
II system simulation" standby="standby" >
<![endif]-->
<!--[if !IE]> -->
<object archive="nbodyzip.zip" type="application/x-java-object"
classid="java:Nbody.class" title="λ Serpentis II system
simulation" standby="standby" width="250" height="150" >
<!-- <![endif]-->
<!-- shared parameter tags go here if needed e.g. -->
<param name="bgcolor" value="#000000" />
<!-- followed by fallback content such as:- -->
<p>Alas! Either your browser is not one for which I've been able to get
XHTML object tags to work, or perhaps it's not Java enabled!</p>
<!-- finally close the one object tag -->
</object>
Here IE wants the main-class via the code attribute
code="Nbody.class"; whereas Gecko browsers (Netscape,
Mozilla, Firefox) want it via the classid attribute,
classid="java:Nbody.class". Both use the archive attribute
to show where the bytecode is to be found.
This works for Netscape 4 and up. I believe it also works in Konqueror (KHTML), and thus also Safari - but if you know different, please say.
It would be nicer if I could find one tag that would feed Java to all these browsers…





