- html - 出于某种原因,IE8 对我的 Sass 文件中继承的 html5 CSS 不友好?
- JMeter 在响应断言中使用 span 标签的问题
- html - 在 :hover and :active? 上具有不同效果的 CSS 动画
- html - 相对于居中的 html 内容固定的 CSS 重复背景?
<video id="videodisplay-0" class="js-play" crossorigin="anonymous">
<source src="things.mp4" type="video/mp4">
<track label="English" kind="captions" srclang="en" default="" src="test.vtt">
</video>
上面是我页面中带有字幕轨道的 HTML5 视频片段。
我有这个 CSS
::cue { visibility: hidden;}
在 Chrome、Opera 和 Safari 中,此 CSS 隐藏了浏览器显示的默认字幕,之后字幕以编程方式显示。
Firefox 和 IE 目前不支持 ::cue
伪元素,因此我需要能够隐藏我以编程方式为这些浏览器显示的标题。
如果浏览器不支持 ::cue
伪元素,我的第一个想法是执行一些代码(隐藏标题),这是我在 JavaScript 或 SASS 中无法完成的.
我如何检测浏览器何时不支持 ::cue
伪元素?
最佳答案
您可以创建一个 <style>
元素在哪里 video::cue
设置伪元素,创建一个<video>
元素,同时追加 style
和 video
元素 document
, 使用 window.getComputedStyle()
获得 video
的属性::cue
伪元素。如果 Resolved value
属性的是一个空字符串,::cue
浏览器不支持伪元素。
资源
function cueSupported() {
var video = document.createElement("video");
var style = document.createElement("style");
style.textContent = "video::cue {background: inherit}";
document.body.appendChild(style);
document.body.appendChild(video);
var cue = window.getComputedStyle(video, "::cue").background;
document.body.removeChild(style);
document.body.removeChild(video);
delete style;
delete video;
return !!(cue.length);
}
if (cueSupported()) {
console.log("::cue pseudo element supported")
} else {
console.log("::cue pseudo element not supported")
}
关于javascript - 检测::cue 伪元素,或在浏览器不支持::cue 时做一些事情,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/41067161/
上面是我页面中带有字幕轨道的 HTML5 视频片段。 我有这个 CSS ::cue { visibility: hidden;} 在 Chrome、Opera 和 Safar
问题很简单 - CUE 文件阅读器(如 Foobar)如何计算最后一首歌曲的持续时间? 这是示例: REM GENRE "Atmospheric Black Metal" REM DATE 2011
我有一个视频标签,我在其中动态传递视频数据,即 src 和 vtt,我只想为当前视频保留 vtt,并删除所有其他 textTracks. 现在切换视频时,与之前播放的视频相关的所有 vtt 开始在视频
我希望禁用 Cue 插件播放列表上的下一首轨道自动播放。在寻找如何做到这一点时,其他人以前使用的解决方案不再有效,因为此后代码发生了变化。 我在插件文件中找到了指示下一个轨道应该自动播放的代码位,但我
想要按钮在深蓝色背景上带有白色文本 xxx.vue 中的代码 sign out 风格是 .bg-blue { } .signout-button { border-radius:
我正在尝试为 HTML5 的 cue.onenter 事件动态分配函数。这是一项真正的新功能,目前仅在启用特定标志的 Chrome 中受支持(参见 HTML5 Rocks 上的示例 here)。 但是
我正在尝试隐藏视频元素上的字幕: 我正在使用以下 CSS: 视频::提示{ 可见性:隐藏; } 它在 Chrome 中运行良好,但在 Safari 上它仅隐藏文本,并且仍然呈现标题背景,如下所示: 我
我有一个大的 M4B 文件和一个 CUE 文件。我想将其拆分为多个 M4B 文件,或将其拆分为多个 MP3 文件(以前首选)。 我想在命令行中执行此操作(OS X,但如果需要可以使用 Linux),而
我正在尝试停止 Cue,然后再次播放。此代码在 Update() 循环中: Cue torpedoSound = soundBank.GetCue("torpedo"); torpedoSound.S
我需要使用 Popcorn.js 更改视频中的提示点。有没有办法编辑已通过 Cue() 方法发送给爆米花播放器的 Cue 事件的时间? 谢谢! 最佳答案 var events = Popcorn.ge
我正在尝试在视频中设置多个提示点。我不想写出每个提示,而是想遍历一个包含我需要的数据的对象,例如提示时间和有关如何处理回调的一些信息。 问题是,当我尝试遍历对象时,它会覆盖除最后一个提示之外的所有提示
当 ready for speech 时,Android 2.x 不会自动发出声音提示输入。 Android 4.1 可以。 这些版本之间发生了什么?即,什么时候引入了这个很酷的功能? Android
我们有一个 WinForms 控件,它是 ComboBox 的扩展版本,在没有选择或文本时支持“提示横幅”(又名水印)。我们的控件类似于这个implementation making use of C
我尝试将字幕添加到音轨。所有浏览器都可以正常工作,但不是 IE10 及以下。 这是我的代码: 然后我尝试从这条赛道中获得一些线索: var trackIE = $('track')[0
我承认这似乎是一个愚蠢的问题。但我和两位设计师在一家小商店里。我们的备份正在失控,因为如果需要进行更改(版本),它们只是复制/粘贴文件。 我已经准备好尝试 Subversion 来处理我们所有的文件、
我是一名优秀的程序员,十分优秀!