【发布时间】:2011-09-18 03:19:04
【问题描述】:
对象标签和 iframe 标签中的 Wmode。
关于使导航在 Flash 页面等中正常工作的讨论很多。
- 有人请详细解释一下属性的实际作用。接受任何级别的技术细节。
谢谢
【问题讨论】:
对象标签和 iframe 标签中的 Wmode。
关于使导航在 Flash 页面等中正常工作的讨论很多。
- 有人请详细解释一下属性的实际作用。接受任何级别的技术细节。
谢谢
【问题讨论】:
wmode 是 <embed> 标签独有的参数,指的是 Flash 电影。默认值为wmode=window。
wmode=windowwmode=window 时,Flash 影片不会在页面中呈现。相反,它显示在与浏览器内容不同的窗口中(使用 Spy++ 或 WinSpy++ 检查)。此模式将具有最佳性能,因为浏览器不必在每一帧上重绘页面的一部分。但是,此模式会阻止您让内容出现在 Flash 影片的上方或下方。
wmode=opaque当wmode=opaque 时,Flash 影片呈现为页面的一部分。没有为电影创建窗口。影片将使用发布过程中设置的背景颜色进行渲染,后面不允许有任何内容。在每一帧上,出现在影片上方的内容都必须由浏览器重新绘制,从而影响性能。
wmode=transparent当wmode=transparent 时,Flash 影片呈现为页面的一部分。没有为电影创建窗口。影片的背景颜色将是透明的。因此,电影的任何非透明部分都将允许显示底层内容。在每一帧上,出现在影片上方和下方的内容都必须由浏览器重新绘制,从而极大地影响性能。
编辑:以下是您的其他问题的答案...
wmode 是仅限 FLASH 的属性吗?
是的,wmode 仅在嵌入 Flash 影片的 <embed> 标记中可用。
不同值之间对性能有何影响?wmode=window 将具有最佳性能,因为 Flash 影片与页面本身完全分开呈现。浏览器不需要刷新也不需要计算出现在 Flash 电影上的内容的 z-index 位置,因为在这种模式下的 Flash 电影是在一个完全独立的窗口中呈现的(可以使用 Spy++ 进行检查)。
wmode=opaque 和 mode=transparent 都遵循非常相似的渲染路径。然而,它们比wmode=window 慢,因为浏览器必须检查元素以查看它们是否在电影之上呈现并在每一帧上呈现它们。请注意,wmode=transparent 比
wmode=opaque 因为它还必须渲染底层内容以及叠加内容。
所以,按性能排序...
FASTEST ----------------------------- SLOWEST
WINDOW OPAQUE TRANSPARENT
【讨论】: