WEB2.0 web20
当前位置:首页 > 网站建设专题 > WEB2.0
你在骗W3C,还是在骗自己的客户?
发布日期:2009-03-29 阅读次数:779 字体大小:

这问题不知道该责骂不会自动更新的IE6,还是该诅咒不懂向下兼容的W3C标准。

这是FLASH传统的嵌入方法:

<object classid="clsid:D27CDB6E-AE6D-11cf-96B8-444553540000" codebase="http://download.macromedia.com/pub/shockwave/cabs/flash/swflash.cab#version=7,0,19,0" width="32" height="32">

 <param name="movie" value="test.swf" />

  <param name="quality" value="high" />

  <embed src="test.swf" quality="high" pluginspage="http://www.macromedia.com/go/getflashplayer" type="application/x-shockwave-flash" width="32" height="32"></embed>

</object>

使用 object 和 embed 标签来嵌入,细心的会发现,object 的很多参数和 embed 里面的很多属性是重复的。

有的浏览器支持 object ,有的支持 embed ,这也是为什么要修改 Flash 的参数时两个地方都要改的原因。这种方法是 Macromedia 一直以来的官方方法,最大限度的保证了 Flash 的功能,没有兼容性问题。

但是自从有了W3C标准,和一些极力要求通过该标准的客户,事情复杂了:

embed被认为是非法的

embed 标签是 Netscape 的私有标签,虽然 embed 标签应用广泛存在,但是从HTML3.2,HTML4.0到XHTML1.0,W3C都没有收录这个标签。使用embed 标签的页面将不能通过W3C校验。

其实他们这样考虑也是正确的,大部分西方国家的用户,正版vista系统基本上做到了普及,他们大多使用IE7.0/IE8.0等主流浏览器,使用这种简介的标签可以节省好几行代码:

  1. <object type="application/x-shockwave-flash" data="test.swf" width="200" height="100"> <parm name="movie" value="test.swf /> </object>