我已经使用CSS创建了下拉菜单,并且YouTube视频放置在导航栏正下方的框中。使用IE 8时,尽管事实上导航栏的div比YouTube视频的div具有更高的z索引,但下拉菜单落后于YouTube视频。这个问题在Firefox,Safari或IE9中不存在。YouTube中的视频内容覆盖IE中的CSS下拉菜单<9
您可以通过访问网站看到了问题:
http://www.mensdiscipleshipnetwork.com
感谢您的帮助。
我已经使用CSS创建了下拉菜单,并且YouTube视频放置在导航栏正下方的框中。使用IE 8时,尽管事实上导航栏的div比YouTube视频的div具有更高的z索引,但下拉菜单落后于YouTube视频。这个问题在Firefox,Safari或IE9中不存在。YouTube中的视频内容覆盖IE中的CSS下拉菜单<9
您可以通过访问网站看到了问题:
http://www.mensdiscipleshipnetwork.com
感谢您的帮助。
看起来您需要将?wmode=transparent
添加到YouTube嵌入iframe src
的网址。像这样:
<iframe width="632" height="390" src="http://www.youtube.com/embed/_K-YwgCyg70?wmode=transparent" frameborder="0" allowfullscreen></iframe>
可以自动SRC添加参数,所有的I帧像这样:如果你正在使用嵌入
$(document).ready(function()
{
$('iframe').each(function()
{
var url = $(this).attr("src");
var char = "?";
if(url.indexOf("?") != -1)
var char = "&";
$(this).attr("src",url+char+"wmode=transparent");
});
});
谢谢!这解决了我的问题。 – gonzo
小心 - 当您只需定位YouTube iframe时,这将修改您网页上的所有iframe。你应该定位那里的src url包含youtube域名。 –
,WMODE需要有一个属性,而不是URL的一部分wmode="transparent"
如果您使用的iframe API,你可以这样添加它(请注意在playerVars最后的参数对象):
player = new YT.Player(playerID,
{
width: '100%',
height: '100%',
videoId: vidID,
playerVars: {
controls: 2,
autohide: 1,
showinfo: 0,
modestbranding: 1,
wmode: 'transparent'
}
});
这不起作用。我收到“发生错误,请稍后再试。”消息 – sdleihssirhc
URL需要为'http://www.youtube.com/embed/_K-YwgCyg70?wmode = transparent'。 @sdleihssirhc:将来的信息。 – thirtydot
是的,对不起。 – Brent