所以这就是我到目前为止所做的:
<div id="video" style="position:absolute;margin-top: 231px;margin-left: 127px;">
<video width="520" height="390" style="z-index:-10;">
<source src="m/video.ogv" type="video/ogg">
<source src="m/video.mp4" type="video/mp4">
</video>
</div>
我有一个固定的菜单,当菜单在视频上时,视频似乎忽略了z-index。我目前正在研究镀铬窗户,没有运气。有什么想法吗?
答案 0 :(得分:19)
对两个重叠的元素使用css position:absolute
属性,并尝试将值0
赋予z-index
<强> Here is working jsFiddle example. 强>
的CSS:
#main_container { float: left; position: relative; left:0; top:0; }
#video { position: absolute; left: 0px; top: 0px; min-height: 100%;
min-width: 100%; z-index: 9997; }
#overlay { position: absolute; left: 0px; top: 0px; height: 100%; width: 100%;
z-index: 9998; }
HTML:
<div id="main_container">
<div id="overlay"></div>
<video id="video" width="" height="" controls="controls" loop="loop" autoplay="">
<source src="http://www.w3schools.com/html/mov_bbb.mp4" type="video/mp4" />
<source src="http://www.w3schools.com/html/mov_bbb.ogg" type="video/ogg" />
Your browser does not support the video tag.
</video>
</div>
注意:使用叠加div来停用控件,您可以使用视频中的任何内容,例如jsFiddle示例。
答案 1 :(得分:1)
叠加层也需要是视频的兄弟。 如果视频是叠加层的子节点,它将无效。
使用:
<div id="container">
<div id="overlay" style="width:100px; height:100px; position:absolute; top:20px; left:20px; z-index:20;">
</div><!-- end #overlay -->
<video id="video" style="width:100px; height:100px; position:absolute; top:20px; left:20px; z-index:10;">
<source src="video.mp4" type="video/mp4">
<source src="video.webm" type="video/webm">
</video>
</div><!-- end #container -->
不要工作:
<div id="container">
<div id="overlay" style="width:100px; height:100px; position:absolute; top:20px; left:20px; z-index:20;">
<video id="video" style="width:100px; height:100px; position:absolute; top:20px; left:20px; z-index:10;">
<source src="video.mp4" type="video/mp4">
<source src="video.webm" type="video/webm">
</video>
</div><!-- end #overlay -->
</div><!-- end #container -->
我只是在Chrome中试过这个,所以如果这不是普遍正确的话,请道歉。
答案 2 :(得分:0)
在覆盖/菜单元素上,使用:
backface-visibility: hidden;
这对我有用。我的猜测是它会触发元素上的3d渲染,从而消除了z-index问题。