You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何让3x3网格固定在视口内且不受内容大小影响?

如何让3x3网格固定在视口内且不受内容大小影响?

嗨,我来帮你搞定这个CCTV视频网格的问题!你现在的代码已经搭好了基础框架,只是还差几个关键调整,就能让整个3x3网格完美贴合视口,完全不会出现滚动条。

咱们一步步来改:

  • 首先给body加上overflow: hidden,这样就算有内容不小心溢出视口,也不会出现滚动条,确保页面始终是全屏无滚动的状态。
  • 你的容器只设置了列的均分,却没指定行的分配!给#container加上grid-template-rows: repeat(3, 1fr),这样3行也会平均瓜分整个视口高度,和3列对应上,真正形成3x3的等分布局。
  • 因为你给.item加了2px的边框,默认情况下边框会额外占用空间,导致整个网格的总尺寸超出视口。所以给.item加上box-sizing: border-box,让边框包含在元素的宽高之内,不会破坏布局。
  • 最后给视频元素加上object-fit: fill,这样不管原视频是什么分辨率,都会拉伸填满整个item容器,完全符合你“无视比例、确保视频可见”的需求(当然如果你的视频播放器本身会处理缩放,这个也可以保留,双重保障)。

下面是修改后的完整代码:

body {
  margin: 0;
  overflow: hidden; /* 新增:禁止滚动 */
}

#container {
  display: grid;
  grid-template-columns: repeat(3, 1fr);
  grid-template-rows: repeat(3, 1fr); /* 新增:均分3行高度 */
  height: 100vh;
  width: 100vw; /* 可选,确保容器占满视口宽度 */
}

.item {
  border: 2px solid red;
  background-color: blue;
  box-sizing: border-box; /* 新增:边框包含在元素尺寸内 */
}

.item video {
  width: 100%;
  height: 100%;
  object-fit: fill; /* 新增:让视频拉伸填满容器 */
}
<div id="container">
  <div class="item">
    <video src="你的视频地址" autoplay muted></video>
  </div>
  <div class="item">
    <video src="你的视频地址" autoplay muted></video>
  </div>
  <div class="item">
    <video src="你的视频地址" autoplay muted></video>
  </div>
  <div class="item">
    <video src="你的视频地址" autoplay muted></video>
  </div>
  <div class="item">
    <video src="你的视频地址" autoplay muted></video>
  </div>
  <div class="item">
    <video src="你的视频地址" autoplay muted></video>
  </div>
  <div class="item">
    <video src="你的视频地址" autoplay muted></video>
  </div>
  <div class="item">
    <video src="你的视频地址" autoplay muted></video>
  </div>
  <div class="item">
    <video src="你的视频地址" autoplay muted></video>
  </div>
</div>

这样调整后,整个网格就会牢牢固定在视口内,不管视频原分辨率是什么样,每个格子都会等占满视口的1/3宽高,视频也会完全填满格子,页面不会出现任何滚动条。

备注:内容来源于stack exchange,提问作者Codemunkie

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.04.17 11:25:28