wmode - 浏览器的渲染行为意味着什么?

时间:2011-06-19 12:09:57

标签: html wmode

对象标记和iframe标记中的Wmode。

关于使导航在flash页面等中正常工作的讨论很多。

- 有人请详细解释实际属性的细节。接受任何级别的技术细节。

谢谢

1 个答案:

答案 0 :(得分:14)

wmode是参考Flash电影的<embed>标记专有的参数。默认值为wmode=window

wmode=window

wmode=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=opaquemode=transparent都遵循非常相似的渲染路径。然而,它们比wmode=window慢,因为浏览器必须检查元素以查看它们是否在电影上方渲染并在每个帧上渲染它们。请注意wmode=transparent慢于。{1}} wmode=opaque因为它还必须呈现基础内容以及叠加内容。

所以,按性能顺序......

FASTEST ----------------------------- SLOWEST

WINDOW             OPAQUE         TRANSPARENT