css - 视频网格,动画放大一个,保持其余部分的结构?
问题描述
我有一个 4x4 的视频网格,我创建了一个 onclick 来放大视频。但是当我使用动画改变点击视频的位置时,网格的其余部分会改变结构。
我怎样才能告诉其他视频留在原地,或者添加一个占位符 div?持有人 div 是试图拥有一个占位符。
<div id=row1>
<div id=holder>
<video loop onclick="zoom(this)">
<source src="01_Isak.m4v" type="video/mp4" />
</video>
</div>
<video loop onclick="zoom(this)">
<source src="06_Wanda.m4v" type="video/mp4" />
</video>
<video loop onclick="zoom(this)">
<source src="08_Anneli.m4v" type="video/mp4" />
</video>
<video loop onclick="zoom(this)">
<source src="17_Annelie.m4v" type="video/mp4" />
</video>
</div>
<div id=row2>
<video loop onclick="zoom(this)">
<source src="09_Caroline.m4v" type="video/mp4" />
</video>
<video loop onclick="zoom(this)">
<source src="13_Hanna.m4v" type="video/mp4" />
</video>
<video loop onclick="zoom(this)">
<source src="12_Åsa.m4v" type="video/mp4" />
</video>
<video loop onclick="zoom(this)">
<source src="16_Elin.m4v" type="video/mp4" />
</video>
</div>
<script>
function zoom(e) {
e.classList.toggle('zoom');
}
</script>
和CSS。
@keyframes zoomie {
0% { }
100% {
z-index: 90;
width: 75%;
position: fixed;
top: 50%;
left: 50%;
transform: translate(-50%, -50%);
}
}
.zoom {
-webkit-animation: zoomie 1s forwards;/* Safari 4+ */
-moz-animation: zoomie 1s forwards; /* Fx 5+ */
-o-animation: zoomie 1s forwards; /* Opera 12+ */
animation: zoomie 1s forwards; /* IE 10+, Fx 29+ */
}
解决方案
根据此建议1将行包装器更改为网格布局
body {
display: grid;
grid-template-columns: repeat(4, 1fr);
grid-template-rows: repeat(4, min-content) 1fr;
grid-gap: 10px;
}
.cell {
border:1px solid #000;
position: relative;
background-color: rgba(255,255,255, 0.5);
}
.cell:nth-child(2n){
grid-column: 2;
}
.cell:nth-child(3n){
grid-column: 3;
}
.cell:nth-child(4n){
grid-column: 4;
}
.cell:nth-child(4n) ~ .cell {
grid-row: 2;
}
.cell:nth-child(8n) ~ .cell {
grid-row: 3;
}
.cell:nth-child(12n) ~ .cell {
grid-row: 4;
}
推荐阅读
- apache - 没有 public_html 访问权限
- azure - azure web 作业在应用服务的辅助插槽中交换
- python - 使用按位与而不是与运算符时未获得输出的逻辑
- android - 我们如何知道我们设备中已安装应用程序的版本代码
- c++ - 字符串流告诉为零
- sockets - 为什么 WinSock2.h 中的 select() 函数如此命名?
- python - Python:覆盖 __int__
- oracle - 独立流水线函数调用另一个独立流水线函数
- python - 如何在没有备份的情况下使用 TimedRotatingFileHandler?每天覆盖现有的日志文件?
- java - SecureRandom 是否会减少伪随机数据的熵?