flash代码为什么不能够通过W3C的xhtml校验?在考虑这个问题的时候,我们先看们插入一段Flash所使用的代码:这是一段标准的flash嵌入代码,目前在任何浏览器上都表示正常,但是惟一的问题是在我们的网页进行w3c的xhtml校验时候,天津网站建设,天津网站制作,天津网站优化,天津做网站,会提示一些有关flash的错误信息。
校验器提示我们embed没有src这个属性。事实上不仅是没有这个属性,对于W3C来说,embed甚至不是一个合法标签。由于历史原因,embed实际上是Netscape浏览器的一个内部使用的标签,并不是HTML及XHTML的标准标签,因此W3C的校验器在判断到这个标时会提示错误信息,导致含有Flash的页面无法通过校验。那么这样,我们该用什么标签来代替呢?答案应该是object是w3c的标准标簽对象,只用于嵌入一些媒体对象,使用object的方法是:但是这样会引发另一个问题,就是在Ⅲ浏览器中flash并不能正确显示,这是由于匝系列浏览器对Web标准支持不完善所造成的。在一段时间中,许多Web标准的设计师开始使用JavaSeript来嵌入flash,但是这种方法仅仅是逃出了校验工具的检查范围,并没有真正做到使flash代码符合标准,那么如何做才能让flash代码符合Web标准的要求呢?我们在此提供了一段能够帮助flash通过校验的flash代码。
这段代码的原理很简单,首先采用object作为flash的插入方式,但是在代码中使用了<1一附!n1><一>到<!一><![endif]-->这样的注释代码,使用这段注释将判断浏览器类型,如果不是IE,将执行其中语句,这样就保证了IE和其他浏览器都能使用符合自己习惯的代码,经测试该代码能够在IE及Firefox中完整的显示flash并能够通过W3C验证。