我想隐藏默认显示在<video>
元素
有可能吗?
答案 0 :(得分:106)
我没有任何便于测试的iOS设备,但也许可以试试这个:
video::-webkit-media-controls {
display:none !important;
}
答案 1 :(得分:63)
似乎苹果再次改变了影子。
为了隐藏播放按钮控件,您必须使用以下CSS:
/* This used to work for the parent element of button divs */
/* But it does not work with newer browsers, the below doesn't hide the play button parent div */
*::-webkit-media-controls-panel {
display: none!important;
-webkit-appearance: none;
}
/* Old shadow dom for play button */
*::-webkit-media-controls-play-button {
display: none!important;
-webkit-appearance: none;
}
/* New shadow dom for play button */
/* This one works! */
*::-webkit-media-controls-start-playback-button {
display: none!important;
-webkit-appearance: none;
}
答案 2 :(得分:56)
看看Safari iOS中的影子DOM告诉我你想要的东西(只隐藏大的中央播放按钮)是:
video::-webkit-media-controls-start-playback-button {
display: none !important;
}
伊恩的回答隐藏了一切,包括文字轨道(隐藏式字幕......)
答案 3 :(得分:9)
在视频源文件中,您只需更改
即可controls= "false"
对于Safari CSS,ios上的本机浏览器,你也可以试试这个hacky技巧
.custom-video-controls {
z-index: 2147483647;
}
以下是有关管理/隐藏HTML 5视频控件的详细信息的链接
http://css-tricks.com/custom-controls-in-html5-video-full-screen/
答案 4 :(得分:2)
基于伊恩的回答
video::-webkit-media-controls {
opacity: 0;
}
这将隐藏所有控件。适用于无法自动播放的背景视频。
答案 5 :(得分:1)
对于webapps。 适用于iOS 10.3 iPhone7&amp; Mac上的Safari 10.1也是如此。感谢以前的贡献者。 我还有一个问题,即元素根本不包含任何“控制”属性。
'<style type="text/css">'+
'*::-webkit-media-controls-panel {'+
' display: none!important;'+
' -webkit-appearance: none;'+
' }'+
/* Old shadow dom for play button */
'*::--webkit-media-controls-play-button {'+
'display: none!important;'+
'-webkit-appearance: none;'+
'}'+
/* New shadow dom for play button */
/* This one works */
'*::-webkit-media-controls-start-playback-button {'+
'display: none!important;'+
' -webkit-appearance: none;'+
'}'+
+'</style>'
答案 6 :(得分:1)
今天@ {2017年iOS 10这有效:
.video-background::-webkit-media-controls-panel,
.video-background::-webkit-media-controls-start-playback-button {
display: none !important;
}
答案 7 :(得分:1)
当设备处于“低功耗模式”时,较新的iOS版本会显示此类播放按钮。
答案 8 :(得分:0)
您无法删除播放按钮。此视频占位符始终显示为文档说: iPhone Video PlaceHolder。但也许你可以检测到你在iphone上并显示一个带有视频链接的图像,而不是视频标签。
<a href="yourvideo.mp4"><img src="yourposter.png"/></a>
该视频将作为视频标记在播放器中启动。
答案 9 :(得分:0)
video::-webkit-media-controls { display:none !important; }
在iOS上没有为我工作,但是
*::-webkit-media-controls-panel {
display: none!important;
-webkit-appearance: none;
}
/* Old shadow dom for play button */
*::--webkit-media-controls-play-button {
display: none!important;
-webkit-appearance: none;
}
/* New shadow dom for play button */
/* This one works */
*::-webkit-media-controls-start-playback-button {
display: none!important;
-webkit-appearance: none;
}
工作完美!
答案 10 :(得分:0)
试试这个:
video {
&::-webkit-media-controls {
display:none !important;
}
&::-webkit-media-controls-start-playback-button {
display: none!important;
-webkit-appearance: none;
}
}
答案 11 :(得分:0)
根据this answer,在Google Chrome浏览器中,我们可以像这样隐藏大播放按钮:
video::-webkit-media-controls-overlay-play-button {
display: none;
}
如果您想在Android和iOS上将其隐藏,则可能会有用。
答案 12 :(得分:0)
IOS 13。*
video::slotted::-webkit-media-controls-container{
display:none !important;
visibility: hidden;!important;
opacity: 0 !important;
-webkit-appearance: none !important;
}
IOS 14 将选择器更改为
:host::shadow::-webkit-media-controls-container{/* hide the element */}
有用的资源: html5rocks shadow dom 201
答案 13 :(得分:-5)
是的,你可以这样做!诀窍是通过不向视频标记添加“controls”属性来“隐藏”视频控件。然后,您可以在视频开始播放后几秒钟动态添加,方法是使用Javascript将“controls”属性附加到标记。只需将值设置为“控件”,它就会动态显示在DOM中......就好像您已将控件添加到视频标记的HTML中一样。根据需要调整计时器。
<video id="some-video-id" src="some-video-url" poster="some-thumbnail-url" />
<a href="javascript:void(0);" id="startVideoLink">Start the Video</a>
<script type="text/javascript">
var oVideoTag = document.getElementById('some-video-id');
var oLink = document.getElementById('startVideoLink');
if (oLink && oVideoTag) {
oLink.addEventListener('click',function(e) {
oVideoTag.play();
setTimeout(function() {
oVideoTag.controls = 'controls';
},2500);
},false);
}
</script>