【问题标题】:HTML video is always displayed as a square and aspect ratio is not respectedHTML 视频始终显示为正方形,不遵守纵横比
【发布时间】:2021-07-21 12:54:28
【问题描述】:

我有以下代码:

.videoWrapper {
display:flex;
position: relative;
}


.videoWrapper  video {
 width:100%;
 height: auto;
}
<div className='videoWrapper'>
      
    <video controls class="videoPlayer">
        <source src='some-video' type="video/mp4" />
     </video>
</div>

我只是想根据视频的纵横比以父 div 的全宽显示视频,以便根据父 div 的宽度调整高度。

但就我而言,视频始终显示为正方形。

我玩过对象填充属性,但没有任何改变。

完全迷失在这里。 非常感谢。

【问题讨论】:

标签: css css-selectors html5-video


【解决方案1】:

&lt;video&gt; 元素在加载和解码之前不知道源视频的实际宽高比(在页面本身呈现之后),因此您必须使用 javascript 来一旦知道实际的纵横比,就调整元素的大小。您可以尝试收听loadedmetadata event,并在该处理程序中使用视频的intrinsic width/height 调整元素的大小。

如果您提前知道视频的宽高比,也许您可​​以使用aspect-ratio 规则,或者搜索如何使用padding-bottom 设置比例的技巧。

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2020-05-13
    • 1970-01-01
    • 2016-06-03
    • 2013-06-14
    • 1970-01-01
    • 1970-01-01
    • 2018-01-26
    • 2015-08-07
    相关资源
    最近更新 更多