简单生活
返回文章列表
700 字4 分钟

符合 XHTML 标准和 HTML5 标准的 Flash 嵌入代码

设计开发#HTML5/Flash

苹果设备的不支持让 Adobe Flash 的日子越来越不好过,不过 Flash 被 HTML5 替代的进程依然是长路漫漫,我们需要做的是在学习 HTML5 的同时继续用好 Flash。

今天闲来无事继续博客的 W3C HTML 标准验证,大多数不符合项都是 Flash 导致的,于是参照建议学习并改正,一起来学习吧。

传统的嵌入代码

<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="400"
height="300"
id="movie"
align=""
>
<param name="movie" value="movie.swf" />
<embed
src="movie.swf"
quality="high"
width="400"
height="300"
name="movie"
align=""
type="application/x-shockwave-flash"
pluginspage="http://www.macromedia.com/go/getflashplayer"
/>
</object>

同时使用了 <object> 元素和 <embed> 元素嵌入 Flash,很长的代码,感觉上有点累赘。<object> 元素用来支持 IE 浏览器,<embed> 元素用来支持 IE 外的其他浏览器,这样的代码可以在多浏览器中兼容,不过,如果你想通过 W3C 的各种 HTML 标准的验证肯定是不行的。

不符合 XHTML 1.0 的 <embed> 元素

<embed width="400" height="300" align="middle" type="application/x-shockwave-flash" allowfullscreen="true" allowscriptaccess="sameDomain" quality="high" src="movie.swf"></embed>

<embed> 元素由 Netscape 创建,用来支持在网页中嵌入播放器插件,虽然现在的大多数浏览器都支持,但是 <embed> 元素却不符合 XHTML 1.0 标准。

不过 <embed> 元素已经在 HTML5 标准中得到了支持,考虑到不能向下兼容,不推荐使用,但是国内主流视频网站如土豆、优酷提供的视频站外调用代码都是 <embed> 元素。

只支持 IE 浏览器的 <object> 元素用法

<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="400"
height="300"
>
<param name="movie" value="movie.swf" />
</object>

XHTML 1.0 标准和 HTML5 标准都支持 <object> 元素,在各浏览器中也可以很好的工作,但是 classid、codebase 等属性却只能 IE 浏览器下工作,也就是说,上面的代码在 IE 外的浏览器中就不能正常工作了。另外 classid、codebase 等属性也不在 HTML5 标准内(参考)。

兼容各浏览器且符合标准的 <object> 元素用法

没关系,在这里我们抛弃 classid 这个在 IE 浏览器的 ActiveX 设置,改用 type 属性和 data 属性,type 属性定义被规定在 data 属性中指定的文件中出现的数据的 MIME 类型。

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

使用这个嵌入 Flash 的代码不仅兼容各种浏览器,而且符合 XHTML1.0 标准和 HTML5 标准。

本文部分内容翻译于:http://www.alistapart.com/articles/flashsatay

历史留言归档

1
静态只读归档
网
网站关键词优化
第一次来访,博主这主题 仿新浪博客的吧 呵呵