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

如何让两个div元素在大屏设备中横向并排显示?

解决方案:用Flex布局实现大屏下视频与播放列表横向并排

我看了你遇到的问题:大屏下想让视频播放器和播放列表横向并排,但之前用padding-right、float、inline-block这些方法都没效果,还得保持视频的响应式宽高比,同时让两者高度匹配。核心问题出在你原来的布局逻辑上,咱们换个思路用Flex来解决:

问题根源

你之前给.customvideoplayer-video-block加padding-right:45%,是想压缩视频的显示宽度,但播放列表本身是这个容器的子元素,它只能在被压缩后的内容区域里,没法跑到右边的padding空间里,所以自然没法和视频并排。

具体修改步骤

1. 重构大屏下的父容器布局

把.customvideoplayer-video-block改成Flex容器,让两个子元素(视频容器和播放列表)直接横向分配空间,同时设置高度自动拉伸:

@media (min-width:1336px) {
  .customvideoplayer-video-block {
    display: flex;
    gap: 2rem; /* 给两者加个间距,看起来更舒服 */
    align-items: stretch; /* 自动让两个子元素高度匹配 */
  }
}

2. 固定视频容器的宽度占比

对应你之前想要的“缩小播放器尺寸”,给视频容器设置固定的宽度占比(比如55%,对应原来的45%留白),同时保留宽高比的逻辑:

@media (min-width:1336px) {
  .customvideoplayer-video-container {
    flex: 0 0 55%; /* 固定占55%宽度,不收缩也不扩展 */
    padding-left: 0; /* 去掉你之前加的大屏padding-left,现在不需要了 */
  }
}

3. 让播放列表自适应剩余空间

调整播放列表的样式,让它占满父容器的剩余宽度,同时高度自动匹配视频容器:

@media (min-width:1336px) {
  .customvideoplayer-video-playlist {
    flex: 1; /* 占剩余所有宽度 */
    height: 100%;
    display: flex;
    flex-direction: column; /* 让头部和列表垂直排列,充分利用空间 */
  }
  .customvideoplayer-video-playlist-table {
    flex: 1; /* 让列表区域自动填充剩余高度 */
    height: auto; /* 去掉固定高度,随父容器自适应 */
  }
}

完整修改后的CSS代码

.customvideoplayer-video-player{ background-color: #27282c; padding: 2em 10%; }
.customvideoplayer-video-container { position: relative; padding-bottom: calc(var(--aspect-ratio, .5625) * 100%); }
.customvideoplayer-video { position: absolute; top: 0; left: 0; width: 100%; height: 100%; }
.customvideoplayer-video-playlist { width: 100%; border-bottom: 4px solid #ffa024; }
.customvideoplayer-video-playlist-table { color: white; background-color: #1b1c1f; height: 250px; overflow-y: scroll; }
.customvideoplayer-video-playlist-table-header-row { color: white; background-color: #1b1c1f; border-bottom: 4px solid #ffa024; padding: 10px; }
.customvideoplayer-video-playlist-table-header-row > p { margin: 0; }
.customvideoplayer-video-playlist-table-header-logo { height: 60px; width: auto; float: left; margin-right: 10px }
.customvideoplayer-video-playlist-table-row { padding: 5px; vertical-align: top; }

/* 大屏布局核心修改 */
@media (min-width:1336px) {
  .customvideoplayer-video-block {
    display: flex;
    gap: 2rem;
    align-items: stretch;
  }
  .customvideoplayer-video-container {
    flex: 0 0 55%;
    padding-left: 0;
  }
  .customvideoplayer-video-playlist {
    flex: 1;
    height: 100%;
    display: flex;
    flex-direction: column;
  }
  .customvideoplayer-video-playlist-table {
    flex: 1;
    height: auto;
  }
}

/* 超大屏可选调整(如果需要更窄的视频) */
@media (min-width: 1921px) {
  .customvideoplayer-video-container {
    /* 比如改成 flex:0 0 50%; 让视频占一半宽度 */
  }
}

这样修改后,大屏下视频和播放列表会完美横向并排,视频保持原来的响应式宽高比,播放列表的高度会自动和视频容器对齐,移动端则依然保持堆叠的正常显示。

内容的提问来源于stack exchange,提问作者csukcl

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.08 11:37:37