- From: Simon Pieters <simonp@opera.com>
- Date: Wed, 22 Oct 2008 18:04:41 +0200
- To: "Shane McCarron" <shane@aptest.com>
- Cc: "public-xhtml2@w3.org" <public-xhtml2@w3.org>
On Wed, 22 Oct 2008 17:31:34 +0200, Shane McCarron <shane@aptest.com> wrote: >> Don't use CDATA sections (except in <script> and <style>). > Yeah. Actually, I think you shouldn't use them at all. Is there a > specific syntax that you believe is portable to XHTML and HTML? If you want to use "<" or "&" in a <script> or <style> element, you have to use <script>//<![CDATA ... //]]></script> or <style>/*<![CDATA[*/ ... /*]]>*/</style> for it to work in both HTML and XHTML. >> Don't use <noscript>. > Why not? I am not aware of a compatibility issue, <noscript> is parsed as a CDATA element in HTML when scripting is enabled, and PCDATA when scripting is disabled. In XML it's always parsed as PCDATA. So if you have, e.g. <form><noscript><input name="x" value="y"/></noscript><button>OK</button></form> the input will be successful in XHTML but not in HTML (when scripting is enabled). (This isn't limited to just forms, though.) >> Don't use markup in <iframe>. > Again, why not? I am not aware of an issue between HTML and XHTML in > this regard. Same as <noscript>. >> Use createElementNS if supported and fall back to createElement. >> (createElement as specced doesn't match reality and there's no interop.) > What does createElementNS do in an HTML context? The same as it does in an XML context. > Or, in that context, do you believe it is not supported? IE doesn't support createElementNS, hence the advice to fall back to createElement. >> When setting innerHTML, make sure the string is both well-formed and >> "HTML 4 compatible". > Agreed, although if I remember correctly innerHTML is not really part of > a W3C spec. http://www.w3.org/TR/html5/dom.html#innerhtml0 http://www.w3.org/TR/html5/dom.html#innerhtml1 Cheers, -- Simon Pieters Opera Software
Received on Wednesday, 22 October 2008 16:05:32 UTC