使用 HTML5 CSS3 强制 iframe YouTube 视频居中并在后台完全覆盖屏幕

2023-12-20

如何强制使用 HTML5iframeYouTube视频居中适配,覆盖全屏窗口背景使用CSS3 HTML最终Java?

比如说“贝宝.it http://paypal.it“主页背景或”unity3d.com/5 http://unity3d.com/5” 顶级视频,有 iframe youtube 视频。 这iframe覆盖全屏(缩放)并在调整窗口大小时覆盖所有宽度和高度。 它重新调整大小,保持 100% 最小宽度缩放高度或 100% 最小高度缩放宽度。

这种效果是如何实现的iframeHTML5 和 CSS3?

HTML5 代码示例

<div class="video" style="opacity: 1;">

    <iframe src="http://www.youtube.com/embed/AddHereVideoId?autoplay=1&amp;html5=1" frameborder="0" style="height: 720px;">
     </iframe>

</div>

代码 CSS3 HTML 最终 Java 帮助将不胜感激。


全尺寸 YouTube 视频,所有宽高比,仅 CSS

TL:DR - 工作小提琴 https://jsfiddle.net/ohepworthbell/k72hbytr/

作为对 @Hinrich 答案的更新/改进,我创建了一个仅 CSS 的缩放器,适用于所有宽高比 - 甚至是极端的宽高比。 iframe 不是过度补偿宽度以适应大多数屏幕尺寸,而是使用vw and vh并使用 CSS 进行偏移transform属性(相对于元素而不是父元素的偏移)。

大多数浏览器(IE9+ 和所有常青浏览器 AFAIK)都支持vw and vh单位,以及transforms,所以这应该适用于几乎所有浏览器无需 JavaScript.

.video-background {
  position: relative;
  overflow: hidden;
  width: 100vw;
  height: 100vh;
}

.video-background iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: 100vw;
  height: 100vh;
  transform: translate(-50%, -50%);
}

@media (min-aspect-ratio: 16/9) {
  .video-background iframe {
    /* height = 100 * (9 / 16) = 56.25 */
    height: 56.25vw;
  }
}
@media (max-aspect-ratio: 16/9) {
  .video-background iframe {
    /* width = 100 / (9 / 16) = 177.777777 */
    width: 177.78vh;
  }
}
<div class="video-background">
  <iframe src="https://www.youtube.com/embed/biWk-QLWY7U?controls=0&showinfo=0&rel=0&autoplay=1&loop=1&mute=1" frameborder="0" allowfullscreen></iframe>
</div>

使用 CSS 变量

对于那些使用 CSS 变量的人,您还可以这样做(小提琴) https://jsfiddle.net/ohepworthbell/62ktqs1j/,它允许您任意重用多个类名的大小:

:root {
  --video-width: 100vw;
  --video-height: 100vh;
}
@media (min-aspect-ratio: 16/9) {
  :root {
    --video-height: 56.25vw;
  }
}
@media (max-aspect-ratio: 16/9) {
  :root {
    --video-width: 177.78vh;
  }
}

.video-background {
  position: relative;
  overflow: hidden;
  width: 100vw;
  height: 100vh;
}
.video-background iframe {
  position: absolute;
  top: 50%;
  left: 50%;
  width: var(--video-width);
  height: var(--video-height);
  transform: translate(-50%, -50%);
}
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)

使用 HTML5 CSS3 强制 iframe YouTube 视频居中并在后台完全覆盖屏幕 的相关文章

  • 使用 UIImage 和 caf 创建视频文件的问题

    我已经阅读了在互联网上可以找到的所有关于此功能的帖子 并且我在创建视频文件方面取得了一些成功 但我还剩下 3 个问题 而且似乎没有人提到过这一点 我有 3 个问题 视频在某些播放器上无法正常播放 quicktime window 视频只播放
  • 如何将CSS应用于iframe?

    我有一个简单的页面 其中有一些 iframe 部分 用于显示 RSS 链接 如何将主页中相同的 CSS 格式应用到 iframe 中显示的页面 Edit 这不能跨域工作 除非有适当的CORS 标头 https developer mozil
  • 您可以使用 event.target 定位元素父元素吗?

    我正在尝试将页面的innerHTML 更改为我单击的元素的innerHTML 唯一的问题是我希望它采用整个元素 例如 section class homeItem div div section 而我用 Javascript 编写的代码 f
  • Html2canvas 忽略图像的对象拟合

    我一直在尝试利用 html2canvas 来截取元素的屏幕截图 我注意到 div 元素内使用 object fit 属性的图像在 html2canvas 屏幕截图后被拉伸 有没有为此散步 这是我的代码
  • HTML5 视频(webm 和 MP4)显示空白屏幕并且无法播放

    我已经用谷歌搜索了一个小时 但我要么很糟糕 要么这不是一个常见问题 这是我的视频标签
  • 是否可以在响应完成之前读取 AJAX 请求?

    我有一个 ajax 请求需要一段时间才能完成 但服务器确实会输出一些内容 如果我只是在浏览器中加载请求 我可以看到页面正在缓慢加载 并且可以随时停止 是否可以在服务器关闭响应之前访问不完整的ajax请求 完成此操作的方法是通过侦听 xhr
  • 当 Flexbox 项目以列模式换行时,容器不会增加其宽度

    我正在研究一个嵌套的弹性盒布局 它应该按如下方式工作 最外层 ul main 是一个水平列表 当向其中添加更多项目时 该列表必须向右扩展 如果它变得太大 应该有一个水平滚动条 main display flex flex direction
  • 选择所有相同类元素并存储在字符串中

    我有一个页面 其中有用户留下的评论 每个帖子都有自己的 id 存储在隐藏的输入标记中 为了动态获取最新帖子 我需要知道所有帖子的 id 并将它们放在字符串中 每个id需要用逗号分隔 例如 HTML 标记 div class msgPost
  • 使文本在 div 内可滚动

    我希望将一些冗长的文本包含到div可以通过向上或向下滚动来查看文本 现在 描述 文本呈现如下并且位于一个 div class div
  • 使用 jQuery 更改鼠标悬停时的图像源

    我有一些图像及其翻转图像 使用 jQuery 我想在 onmousemove onmouseout 事件发生时显示 隐藏鼠标悬停图像 我所有的图像名称都遵循相同的模式 如下所示 原图 Image gif 翻转图像 Imageover gif
  • Motorola Android 2.2 相机忽略 EXTRA_OUTPUT 参数

    我以编程方式打开相机来拍摄视频 我告诉相机使用如下代码将视频文件放置到指定位置 Intent intent new Intent MediaStore ACTION VIDEO CAPTURE File out new File sdcar
  • 类名中的方括号是什么意思?

    I saw here http www position absolute com articles jquery form validator because form validation is a mess 类名中使用的方括号
  • Bootstrap 将图像与文本对齐

    我正在尝试使用引导程序将左侧的图像与文本对齐 并且当在移动设备上查看页面时 图像将居中于文本顶部 div class container div class row h1 About Me h1 div class col md 4 div
  • CSS:DIV 中的文本被截断

    我正在致力于集成一个 jQuery 插件 该插件会隐藏页面的某些部分 直到用户单击 喜欢按钮 Facebook 小部件的部分文本被切断 我已经尝试过 CSS 但无法让它完全显示 如果容器的宽度设置正确 还有什么可能导致文本被截断 例子 ht
  • 创建具有可变宽度
    的定义列表(包括 JSFiddle)

    我有一个定义列表 其中术语和定义的宽度都不同 编辑 为了澄清 当我说变化宽度时 我的意思是它们不能是固定宽度 显然 通过设置 的宽度就可以轻松实现这种效果我需要每一对并排坐着 如果需要的话可以变成多行 而不是包裹在 这是一个 JSFiddl
  • 更改滚动条样式

    我们可以更改滚动条样式吗 我想在其上放置图像 而不是默认滚动条 No IE 允许更改某些滚动条元素的颜色 但其他浏览器 不 唯一的解决方案是使用自定义 JS 来实现这一点 但这总是比本机控件更丑陋和无用 看一眼 http www kelvi
  • 使用 JS 从列表中删除最近的 元素的 URL

    所以我有一个网址列表 并且有删除按钮 图像按钮 当点击删除按钮时 按钮旁边的 url 必须从列表中删除 let list const remove document getElementById remove const view docu
  • 如何使用 CSS3 更改图像的颜色?

    这有效 a color hsla 0 100 50 0 2 这并不 img color hsla 0 100 50 0 2 有没有类似的东西img opacity 1 允许定义图像的 hsl 值 文本和图像是两个不同的东西 文本由浏览器根据
  • CSS3 Marquee / Ticker 动画最后没有空格

    我正在用 2 个项目集合构建字幕 旋转木马效果 循环两者item collection跨越translateX并不难 这里是小提琴 http jsfiddle net k1k3h2p0 但我不喜欢每个循环末尾的空白区域 知道两个集合的宽度可
  • MediaRecorder 纵向模式下的视频捕获

    我正在尝试制作自定义视频应用程序 Iwork 使用清单中的设置仅 2 2 API 8 一切顺利 但我不明白为什么纵向模式视频与横向模式视频没有区别 为了检测设备改变的方向 我在 surfaceChanged 中使用此代码 if mCamer

随机推荐

  • Indexeddb:使用通配符搜索

    我想知道是否可以使用通配符对 indexeddb 对象存储执行搜索 例如 查找键以 555 开头的所有对象会很方便 使用复合键或键片段可以开箱即用地实现这一点 键在 IndexedDB 中的工作方式是生成一个 keyRange 对象并将其传
  • 当任何线程完成任务时终止多个线程

    我对 python 和线程都很陌生 我编写了 python 代码 它充当网络爬虫并在网站中搜索特定关键字 我的问题是 如何使用线程同时运行类的三个不同实例 当其中一个实例找到关键字时 所有三个实例都必须关闭并停止抓取网络 这是一些代码 cl
  • 为什么我的 Visual Studio Win32 项目需要安装 .NET 3.5 SP1?

    使用 Visual Studio 2008 我创建了一个 C Win32 http en wikipedia org wiki Windows API项目 为了发布该程序 我在同一解决方案中创建了一个 Visual Studio 安装项目
  • 删除 FASTA 文件中的换行符

    我有一个 fasta 文件 其中序列用换行符分隔 我想删除换行符 这是我的文件的示例 gt accession1 ATGGCCCATG GGATCCTAGC gt accession2 GATATCCATG AAACGGCTTA 我想把它转
  • PHP - 访客在线计数器

    我有以下代码来统计我的 PHP 网站上的访问者数量 它在使用 WampServer 的本地开发计算机上运行良好 但当我将文件上传到我的托管帐户进行测试时 我意识到它无法正常工作 我得到的数字非常高 并且还注意到会话永远不会被删除 因此它们只
  • Asp.net MVC Razor 页面上有多个表单

    Yo 我的网站上有一个注册页面 页面顶部是现有用户的登录表单 主区域有登记表 登录区域是部分视图 model ViewModels LoginViewModel注册区域也是部分的 model ViewModels RegViewModel
  • StreamProvider 与 RiverPod 无法正常工作(尝试从 Provider 迁移)

    我试图通过将简单的 FireStore auth Provider 示例迁移到 RiverPod 来了解 RiverPod 这是我的身份验证服务 import package firebase auth firebase auth dart
  • JSONP 长轮询始终加载

    我正在使用 JSONP 进行长轮询 而 Firefox 不断弹出 正在加载 微调器 使页面看起来像是尚未完成加载 有办法抑制这种情况吗 我被告知 Orbited 团队有一些技巧可以抑制这种情况 但浏览 Orbited js 代码我无法弄清楚
  • Pymongo 批量插入不起作用

    我正在按照教程进行操作http api mongodb org python current tutorial html http api mongodb org python current tutorial html用于批量插入 但是
  • 更改 ggplot 中的线宽,而不是大小

    我看到几篇关于改变线宽 https stackoverflow com questions 14794599 how to change line width in ggplot在 ggplot 中 这些答案虽然对OP来说内容丰富且有效 但
  • 使用引用字段值进行聚合中的 Mongodb 正则表达式

    注意 我使用的是 Mongodb 4 我必须使用聚合 因为这是更大聚合的一步 Problem 如何在集合文档中查找包含以同一文档中另一个字段的值开头的字段 让我们从这个集合开始 db regextest insert first Pizza
  • VBA Excel 中的弹出图表

    我想知道是否有一种方法可以根据特定工作表中找到的值 通过按按钮在 Excel 中创建弹出图表 最好的方法是能够在 VBA 中完成它 我一直在研究但找不到任何真正的解决方案 有什么建议么 你 你这个幸运儿 p 由于我有空 我为您创建了一个基本
  • 字符串文字:它们去了哪里?

    我对字符串文字的分配 存储位置感兴趣 我确实找到了一个有趣的答案here https stackoverflow com questions 51592 is there a need to destroy char string or c
  • 自托管 Azure DevOps Agents 卷映射

    在执行容器化任务时 在 K8s 中运行自托管 docker 构建代理时 出现以下错误 我已按照文档进行操作here https learn microsoft com en us azure devops pipelines agents
  • UILabel 优于 UIProgressView,具有多种颜色

    所以我还没有这样做 我正在尝试弄清楚如何做到这一点 所以我制作了一个 UITableView 每个单元格都有一个关联的 NSTimer 现在 在每个自定义 UITableViewCell 中 我都有一个 UIProgressView 作为背
  • 一旦这些容器执行的脚本调用 exit() ,如何退出“docker run”容器

    我有一个 docker compose 设置 分三步部署 构建所有容器并dc up d dc是一个别名docker compose 创建数据库 dc run web usr local bin python create db py 使用以
  • while(i--) s+= a[i]; 是吗?包含 C 和 C++ 中未定义的行为?

    考虑简单的代码 include stdio h define N 10U int main int a N 0 unsigned int i N int s 0 Fill a while i s a i printf Sum is d n
  • 从哪里可以更改 App Store 中已有应用程序的刷新率?

    我在 iPhone 和 Android 应用商店中有一个应用程序 他们有横幅广告和插页式广告 我记得设置刷新率时设置过一次 但现在找不到了 我检查了我的管理员帐户 但找不到可以更改的位置 在 AdMob 网站中的哪里可以找到此设置 登录Ad
  • 堆栈服务容器动态主机名

    我正在从 Docker Cloud 迁移到纯 Docker Swarm 设置 我缺少的一件事是容器如何将主机名设置为 SERVICE NAME SLOT NUMBER 是否可以在 Swarm 堆栈服务中动态设置主机名 容器名称 在您的堆栈
  • 使用 HTML5 CSS3 强制 iframe YouTube 视频居中并在后台完全覆盖屏幕

    如何强制使用 HTML5iframeYouTube视频居中适配 覆盖全屏窗口背景使用CSS3 HTML最终Java 比如说 贝宝 it http paypal it 主页背景或 unity3d com 5 http unity3d com