图滑块 "Stacks"
Figure Slider "Stacks"
我正在尝试制作一个 响应式 CSS 图片滑块 ,但当我在 <figure>
中放置超过 5 张图片时遇到了问题堵塞。例如,当我有 8 张图像要放入帧块时,第 6、第 7 和第 8 张图像字面上 低于 第 1、第 2、第 3、第 4 和第 5 张图像(非常奇怪的问题)。这是我正在谈论的内容的更好表示:
我是 Dirty Bomb 游戏的粉丝,我正在尝试为它制作一个 fan-site。我希望 所有 HD Dirty Bomb 背景成为我的滑块的一部分,但遇到了很多麻烦。这是它的样子:
这是滑块的代码(有效但第 6、7 和 8 张图片总是在底部!):
HTML
<div class="slider">
<figure>
<img src="../img/bg/naderbg.png" alt>
<img src="../img/bg/proxybg.png" alt>
<img src="../img/bg/fletcherbg.png" alt>
<img src="../img/bg/bushwackerbg.png" alt>
<img src="../img/bg/sparksbg.png" alt>
<img src="../img/bg/kirabg.png" alt>
<img src="../img/bg/rhinobg.png" alt>
<img src="../img/bg/artybg.png" alt>
</figure>
</div>
CSS
.slider{
overflow: hidden;
}
.slider figure{
position:absolute;
width:500%;
margin:0;
left:0;
animation: 100s slidy infinite;
}
.slider figure img{
width:20%;
float:left;
}
@keyframes slidy{
0%{left:0%;}
10%{left:0%;}
12%{left:-100%;}
22%{left:-100%;}
24%{left:-200%;}
34%{left:-200%;}
36%{left:-300%;}
46%{left:-300%;}
48%{left:-400%;}
58%{left:-400%;}
60%{left:-300%;}
70%{left:-300%;}
72%{left:-200%;}
82%{left:-200%;}
84%{left:-100%;}
94%{left:-100%;}
96%{left:0%;}
}
此外,Dudley Storey 在此网站中的代码也会发生同样的事情。
如果你添加超过 5 张图片(例如你在他的代码中添加相同的图片),第 6、7、8 等,将低于第 1、2、3 等
https://codepen.io/dudleystorey/pen/ehKpi
我已经为这个问题苦恼了一整天。我一直在 YouTube、互联网、Stack Overflow 上查看大量视频,但我就是找不到解决方案。
您应该将 .slider figure
的宽度设置为 100% * images count
(8 张图片为 800%),并将 .slider figure img
设置为 100% / images count
(8 张图片为 12.5%):
@keyframes slidy {
0% { left: 0%; }
20% { left: 0%; }
25% { left: -100%; }
45% { left: -100%; }
50% { left: -200%; }
70% { left: -200%; }
75% { left: -300%; }
95% { left: -300%; }
100% { left: -400%; }
}
body { margin: 0; }
div#slider { overflow: hidden; }
div#slider figure img {
width: 12.5%;
float: left;
}
div#slider figure {
position: relative;
width: 800%;
margin: 0;
left: 0;
text-align: left;
font-size: 0;
animation: 30s slidy infinite;
}
我正在尝试制作一个 响应式 CSS 图片滑块 ,但当我在 <figure>
中放置超过 5 张图片时遇到了问题堵塞。例如,当我有 8 张图像要放入帧块时,第 6、第 7 和第 8 张图像字面上 低于 第 1、第 2、第 3、第 4 和第 5 张图像(非常奇怪的问题)。这是我正在谈论的内容的更好表示:
我是 Dirty Bomb 游戏的粉丝,我正在尝试为它制作一个 fan-site。我希望 所有 HD Dirty Bomb 背景成为我的滑块的一部分,但遇到了很多麻烦。这是它的样子:
这是滑块的代码(有效但第 6、7 和 8 张图片总是在底部!):
HTML
<div class="slider">
<figure>
<img src="../img/bg/naderbg.png" alt>
<img src="../img/bg/proxybg.png" alt>
<img src="../img/bg/fletcherbg.png" alt>
<img src="../img/bg/bushwackerbg.png" alt>
<img src="../img/bg/sparksbg.png" alt>
<img src="../img/bg/kirabg.png" alt>
<img src="../img/bg/rhinobg.png" alt>
<img src="../img/bg/artybg.png" alt>
</figure>
</div>
CSS
.slider{
overflow: hidden;
}
.slider figure{
position:absolute;
width:500%;
margin:0;
left:0;
animation: 100s slidy infinite;
}
.slider figure img{
width:20%;
float:left;
}
@keyframes slidy{
0%{left:0%;}
10%{left:0%;}
12%{left:-100%;}
22%{left:-100%;}
24%{left:-200%;}
34%{left:-200%;}
36%{left:-300%;}
46%{left:-300%;}
48%{left:-400%;}
58%{left:-400%;}
60%{left:-300%;}
70%{left:-300%;}
72%{left:-200%;}
82%{left:-200%;}
84%{left:-100%;}
94%{left:-100%;}
96%{left:0%;}
}
此外,Dudley Storey 在此网站中的代码也会发生同样的事情。
如果你添加超过 5 张图片(例如你在他的代码中添加相同的图片),第 6、7、8 等,将低于第 1、2、3 等
https://codepen.io/dudleystorey/pen/ehKpi
我已经为这个问题苦恼了一整天。我一直在 YouTube、互联网、Stack Overflow 上查看大量视频,但我就是找不到解决方案。
您应该将 .slider figure
的宽度设置为 100% * images count
(8 张图片为 800%),并将 .slider figure img
设置为 100% / images count
(8 张图片为 12.5%):
@keyframes slidy {
0% { left: 0%; }
20% { left: 0%; }
25% { left: -100%; }
45% { left: -100%; }
50% { left: -200%; }
70% { left: -200%; }
75% { left: -300%; }
95% { left: -300%; }
100% { left: -400%; }
}
body { margin: 0; }
div#slider { overflow: hidden; }
div#slider figure img {
width: 12.5%;
float: left;
}
div#slider figure {
position: relative;
width: 800%;
margin: 0;
left: 0;
text-align: left;
font-size: 0;
animation: 30s slidy infinite;
}