【发布时间】:2021-01-27 00:05:35
【问题描述】:
我有这个元素 (.tas-fullscreen),它包含一个 .media-container 和一个 .content-container。媒体容器包含视频元素,内容容器包含文本。不旋转 .tas-fullscreen 元素时看起来不错,但是当我旋转它时,视频元素会自动放置在所有元素之上。文本元素应始终位于视频元素之上。
我尝试过在 .content-container 上使用高 z-index,在 .media-container 上使用低 z-index,但没有任何效果。
这是一个简单的例子
.tas-fullscreen{
position: absolute;
left: 0px;
top:600px;
overflow: hidden;
z-index: 10;
height: 300px;
width: 600px;
font-size: 46px;
transform: rotate(-90deg);
transform-origin: 0% 0%;
display: flex;
}
.media-container{
position:absolute;
top:0;
left:0;
width:100%;
height:100%;
z-index:0;
}
.media-content{
width: 100%;
height: 100%;
position: absolute;
top: 0;
left: 0;
z-index:10;
}
video{
object-fit: cover;
height: 100%;
width:100%;
z-index:0;
}
<div class="tas-fullscreen">
<div>
<div class="media-container">
<video class="video" autoplay="true" loop="" muted="" data-origwidth="0" data-origheight="0"><source src="https://theadstore.io/wp-content/uploads/2020/09/dcf3ca22-d06f-44d1-b140-b7fdbf7faffa.mp4" type="video/mp4"></video>
</div>
<div class="media-content">
<div class="heading">
This is the header
</div>
<div class="body">
This is the body
</div>
</div>
</div>
</div>
https://theadstore.io/?p=2232&a=niels
希望你能帮助我。
【问题讨论】:
-
您能否添加一个演示问题的最小代码示例。
-
@AHaworth 我添加了一个简单的例子,谢谢。
-
嗨,您的 sn-p 正在 Windows 10 Edge 和 Chrome 上运行(因为文本位于视频顶部,但视频只是位于主 div 的中间,占据了全高(300px)和看似相同的宽度。在 W10 上的 FF 上,文本显示在视频上方 OK 并且视频占据了整个宽度。W10 上的 IE11 在视频上显示了一些文本,但大部分都丢失在黑色环绕中,视频是与 Edge/Chrome 上的尺寸相同。在 iPadIOS Safari 上,视频似乎(几乎)占据了整个宽度,但文本消失了。您对哪些浏览器/系统感兴趣,您正在使用哪些?
-
嗨@AHaworth,感谢您测试所有这些浏览器供应商/操作系统。我在 Mac (Catalina) 上使用 Crome,并将浏览器定位在电视屏幕上(例如三星)。他们似乎使它相似。我想不同观点的原因是,我没有在浏览器中为属性添加前缀 -moz- -ms- 等。但我认为这与文本位于下方的事实无关我这边的视频。有意义吗?
-
我认为您现在不需要为所有内容添加前缀,尤其是对于 Chrome,但是,我会在今天晚些时候继续检查。 Chrome(因此可能是 Edge)和设置视频以覆盖有些奇怪 - 它只是没有,但它更好地处理文本(在 W10 上)。很奇怪。
标签: css video rotation transform