HTML5 <video> 没有标准的全屏按钮?
No Standard Full Screen Button for HTML5 <video>?
我有一个 video
元素,它与 Safari 中的标准控件完美配合(OS X 10.11 - El Capitan)。我有播放/暂停、洗涤器、字幕,甚至 AirPlay。 …但是没有全屏按钮。我发誓我以前在普通控件上见过那个按钮。 WebKit 博客甚至有一个 unrelated article 中带有按钮的屏幕截图(尽管背景过滤器非常棒,请查看)。
这真的不是标准功能吗?
我已经将 fullscreen
添加到 video
和 source
标签中,甚至 fullscreen="fullscreen"
也是为了更好的衡量标准。 controls
标签正在工作(毕竟我看到了控件)。
iOS' 控件在视觉上有所不同,包括全屏按钮。
我一直在寻找,我能找到的最受欢迎的东西是 this super old Whosebug article that basically says I need to use Javascript. That doesn't seem right. I feel like I’m taking crazy pills!
我想这可以解释为什么这么多网站使用 JS 挂钩来滚动他们自己的控件,但对于预期的功能来说似乎需要做很多工作。
我意识到我只是在为我可怜的名声找麻烦,但我希望我只是错过了一些明显的东西。
提前感谢您的帮助/投反对票。 :)
开始播放视频时是否显示全屏切换按钮?
根据 Apple 的 documentation:
The webkitSupportsFullscreen property is not valid until the movie metadata has loaded. You can detect when the metadata is loaded by installing an event listener for the loadedmetadata event.
在控件中启用全屏支持之前,似乎需要检查视频文件中的一些支持。
在 Chrome 和 Safari 上查看 HTML5 video 时,全屏切换按钮只有在视频开始播放后才会出现。
编辑:您可以通过将 preload="metadata"
添加到 video
元素来解决此问题。
我想通了,这至少是愚蠢的一半。
标题
我将视频元素设置为使用 max-width: 100%
,这样它就会填充页面上的容器。我不认为这会对视频全屏显示有任何影响。
无元数据
视频一开始没有任何要预加载的元数据。我使用了一个应用程序来为文件添加标题。
我对这个问题感到恐慌,直到我发现 "popup window" 而不是常规 window/tab 中包含的 <video>
会导致 <video>
标记将全屏按钮放在其控件中。
我的 "page preview" 碰巧是在弹出窗口 window 中启动的,并且在最大化它之后,我花了一些时间来排除各种因素,然后才得出结论,这是一个弹出窗口与正常窗口window/tab 问题。
我遇到的行为发生在 Chrome。我还没有在其他浏览器上试过。
此外:另外,请注意,在 IFRAME 中也有相同的行为方式,也删除了全屏按钮(来自评论)。
我有一个 video
元素,它与 Safari 中的标准控件完美配合(OS X 10.11 - El Capitan)。我有播放/暂停、洗涤器、字幕,甚至 AirPlay。 …但是没有全屏按钮。我发誓我以前在普通控件上见过那个按钮。 WebKit 博客甚至有一个 unrelated article 中带有按钮的屏幕截图(尽管背景过滤器非常棒,请查看)。
这真的不是标准功能吗?
我已经将 fullscreen
添加到 video
和 source
标签中,甚至 fullscreen="fullscreen"
也是为了更好的衡量标准。 controls
标签正在工作(毕竟我看到了控件)。
iOS' 控件在视觉上有所不同,包括全屏按钮。
我一直在寻找,我能找到的最受欢迎的东西是 this super old Whosebug article that basically says I need to use Javascript. That doesn't seem right. I feel like I’m taking crazy pills!
我想这可以解释为什么这么多网站使用 JS 挂钩来滚动他们自己的控件,但对于预期的功能来说似乎需要做很多工作。
我意识到我只是在为我可怜的名声找麻烦,但我希望我只是错过了一些明显的东西。
提前感谢您的帮助/投反对票。 :)
开始播放视频时是否显示全屏切换按钮?
根据 Apple 的 documentation:
The webkitSupportsFullscreen property is not valid until the movie metadata has loaded. You can detect when the metadata is loaded by installing an event listener for the loadedmetadata event.
在控件中启用全屏支持之前,似乎需要检查视频文件中的一些支持。
在 Chrome 和 Safari 上查看 HTML5 video 时,全屏切换按钮只有在视频开始播放后才会出现。
编辑:您可以通过将 preload="metadata"
添加到 video
元素来解决此问题。
我想通了,这至少是愚蠢的一半。
标题
我将视频元素设置为使用 max-width: 100%
,这样它就会填充页面上的容器。我不认为这会对视频全屏显示有任何影响。
无元数据
视频一开始没有任何要预加载的元数据。我使用了一个应用程序来为文件添加标题。
我对这个问题感到恐慌,直到我发现 "popup window" 而不是常规 window/tab 中包含的 <video>
会导致 <video>
标记将全屏按钮放在其控件中。
我的 "page preview" 碰巧是在弹出窗口 window 中启动的,并且在最大化它之后,我花了一些时间来排除各种因素,然后才得出结论,这是一个弹出窗口与正常窗口window/tab 问题。
我遇到的行为发生在 Chrome。我还没有在其他浏览器上试过。
此外:另外,请注意,在 IFRAME 中也有相同的行为方式,也删除了全屏按钮(来自评论)。