html – 使用CSS旋转视频并适合屏幕

前端之家收集整理的这篇文章主要介绍了html – 使用CSS旋转视频并适合屏幕前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。

我有以下风格:

  1. video {
  2. position:absolute;
  3. transform:rotate(90deg);
  4. width: 100%;
  5. height: 100%;
  6. z-index:4;
  7. visibility : visible;
  8. }

这是视频元素

这似乎旋转并使视频居中,但它几乎是其大小的四分之一.怎么能让它适合屏幕?

最佳答案
这是一个新的CSS3单元派上用场的情况.如果您只是使用普通百分比来指定< video>的宽度和高度如果元素,它们将默认将这些尺寸与其视口对应关联 – 但仅在旋转之前.因此,旋转后,这些值将不再与视口尺寸正确对应.

由于在这种情况下您实际上想要相反,您可以使用height:100vw和width:100vh来明确指定您希望根据视口宽度测量高度,并根据视口高度测量宽度.

使用正确的大小调整,您还需要更改视频旋转的点.否则,很难将视频的边缘与视口的边缘对齐,如此专业制作的可视化示例所示:

在此调整之后,最后一步是将视频向上移动一定量,以使其与视口顶部齐平.这个金额多少钱?嗯,视频的高度 – 我们指定为100vw. (我为此使用了负余量顶部.)

实现这些更改(并设置object-fit:cover以便看不到空格),我们最终得到:

  1. html,body {
  2. margin: 0; /* Because annoying default browser margins */
  3. }
  4. video {
  5. position: absolute;
  6. transform: rotate(90deg);
  7. transform-origin: bottom left;
  8. width: 100vh;
  9. height: 100vw;
  10. margin-top: -100vw;
  11. object-fit: cover;
  12. z-index: 4;
  13. visibility: visible;
  14. }

希望这可以帮助!如果您有任何疑问,请告诉我.

猜你在找的HTML相关文章