您当前位于:
HTML5新技术 ——> HTML5 视音频,如何去除全屏中的控制栏
HTML5 视音频,如何去除全屏中的控制栏
2015/08/12 19:00:09
|
作者:HTML5学堂(码匠)
|
分类:HTML5新技术
|
关键词:HTML5,video,全屏,控制栏,视音频
HTML5视音频-解决全屏下出现的控制栏
HTML5学堂:HTML5视音频-解决全屏下的控制栏。HTML5可以简简单单的实现视频、音频的播放功能,功能虽好用,但是它的默认样式有点淡淡的忧伤,问题虽存在,解决的办法总是有的,今天我就给大家来分享一下解决视频全屏下出现的控制栏。
发现问题
video标签去除controls属性全屏下仍然出现控制栏
-
<video class="video-wrap" preload="auto" poster="../images/html5.png">
-
<source type="video/webm" src="../video/baobao.webm"></source>
-
<source type="video/ogg" src="../video/wildlife.ogg"></source>
-
<source type="video/mp4" src="../video/wildlife.mp4"></source>
-
</video>
谷歌下
火狐下
分析问题
视频的控制栏不是标签?那是什么?
不是吧,控制栏是Shadow DOM。
Shadow DOM是指浏览器的一种能力,它允许在文档(document)渲染时插入一棵DOM元素子树,但是这棵子树不在主DOM树中
欢迎沟通交流~HTML5学堂
Shadow DOM的示例
-
<!DOCTYPE html>
-
<html>
-
<head>
-
<meta charset="UTF-8" />
-
<title>HTML5Course - 梦幻雪冰</title>
-
<link rel="stylesheet" type="text/css" href="reset.css" />
-
</head>
-
<body>
-
<p>HTML5学堂、刘国利、陈能堡</p>
-
<div id="shadow"></div>
-
<script>
-
var shadowEle = document.getElementById("shadow");
-
-
var root = shadowEle.createShadowRoot();
-
root.textContent = "我在你的心里面~";
-
</script>
-
</body>
-
</html>
效果
影子宿主里面的内容没有被渲染,反而影子根里面的内容被渲染了出来。
解决问题
用伪选择器来解决播放器全屏下的控制栏(Shadow DOM)
-
video::-webkit-media-controls-enclosure {
-
/*禁用播放器控制栏的样式*/
-
display: none !important;
-
}
效果
自定义的控制栏z-index的值
视频的控制栏z-index的值为2147483647,自定义(自己实现的)的z-index必须大于2147483647的值。
自定义的视频控制栏效果
总结
1、禁用视频的控制栏
2、采用定位布局实现自定义视频控制栏,需要注意z-index的值。
demo下载——点击下载(访问密码 311c)
欢迎沟通交流~HTML5学堂
阅读:3860