Flash 嵌入与 html 叠加,wmode="direct"



我正试图将html元素放置在一个flash视频上,必须使用wmode="direct"进行渲染(视频占用了整个窗口,html UI将被放置在上面,除direct之外的任何东西都会使CPU使用率激增)。

我尝试过使用iframe来包含flash视频,但我仍然无法在上面放置任何元素。有解决方法吗?

根据Adobe的wmode浏览器支持矩阵,Mac上当前版本的所有主要浏览器都已经支持此用例。在Windows上的支持是不稳定的,只有IE 9+声称可以工作。

和你一样,我正在努力了解Adobe是否/何时计划在Windows浏览器中扩展对wmode=direct的HTML覆盖支持。链接页面只谈到Chrome高达10,FF高达4,因此自上次更新文档以来,可能已经取得了更多进展。

如果我发现一些有用的东西,我会把它添加到这个答案中,在那之前,假设你需要Windows上的IE 9+来支持direct+覆盖可能是最安全的。

我们发现,当wmode="direct"时,大多数浏览器都支持HTML覆盖,但没有一个浏览器能够支持覆盖在flash上的透明度。即使是PNG也不能正确地进行alpha混合。任何具有alpha通道并忽略的像素,就好像根本没有像素一样。

当创建UI在flash顶部分层时,我们必须"覆盖"SWF,或者使用矩形DOM元素(即,没有圆角)

此外,Windows 7和旧版本上的IE 9根本无法将任何覆盖在闪存上。Iframe似乎穿透了SWF,但HTML元素却没有。

最新更新