4

我在 chrome 中使用 youtube 覆盖视频时遇到问题,覆盖的不透明度为 0.8,但是在 chrome 中,youtube 视频也应用了不透明度,因此您可以看穿它。

我在此任务中使用 swfobject.embedSWF 和 ProtoTube 插件,但无法弄清楚为什么会发生这种情况,有什么想法吗?

功能是:

getVideoEmbed: function(wrapper) {
        var wrapperID = wrapper.identify();
        var flashvars = {
            fs: this.options.fs,
            autoplay: this.options.autoplay,
            loop: this.options.loop,
            hd: this.options.hd,
            showinfo: this.options.showinfo,
            rel: this.options.rel

        };
        var params = { 
            wmode: "transparent",
            allowScriptAccess: "always",
            allowFullScreen: true,
            menu: false
        };
        var atts = { };
        swfobject.embedSWF(this.options.youtubeVideoUrl+this.videoID, wrapperID, this.options.playerWidth, this.options.playerHeight, "9", null, flashvars, params);
    },

可以在此处找到问题的示例 URL:http: //tinyurl.com/b48u39c(单击 chrome 主图像上的播放视频链接以查看问题)

4

2 回答 2

2

{opacity: 0.8}Firefox 16.0.2 和 IE 9 中,电影看起来与 Chrome 23 中的完全一样(半透明,通过它可以看到图像和文本)。在 Opera 12.02 中,电影看起来有点漂白(混合了大量的白色)。

所以恕我直言,这不是 Chrome 的特定错误。这是浏览器的行为 - 以某种方式将元素的不透明度应用于嵌套对象(因为object嵌套在您的div class="overlay".

更新:将您的 swf 播放器放在更高 div class="overlay"的位置z-index(例如{z-index: 5001;},不在覆盖范围

于 2012-11-15T21:27:50.890 回答
1

我最终使用了 rgba(0, 0, 0, 0.8) ,它在 CSS 中修复了它

于 2012-11-12T20:46:36.457 回答