css - 我如何计算 10 张幻灯片的纯 css3 slider 的百分比

标签 css slider

我有一个元素,其中一个纯 css3 slider 正在处理 5 个图像,关键帧计算如下面的 css 脚本中所述。我想将其增加到 10 张图像并尝试使用关键帧但无法使其正常工作。在这方面的任何帮助将不胜感激。

html:

 <div id="captioned-gallery">
     <figure class="slider">
          <figure> <img src="./files/auto1.jpg" alt=""> </figure>
          <figure> <img src="./files/auto8.jpg" alt=""> </figure>
          <figure> <img src="./files/auto3.jpg" alt=""> </figure>
          <figure> <img src="./files/auto4.jpg" alt=""> </figure>
          <figure> <img src="./files/auto5.jpg" alt=""> </figure>
          <figure> <img src="./files/auto1.jpg" alt=""> </figure>
     </figure>
</div>

CSS:

figure.slider {
     position: relative;
     width: 1000%;
     font-size: 0;
     animation: 30s slidy infinite;
}
 figure.slider figure {
     width: 10%;
     height: auto;
     display: inline-block;
     position: inherit;
}
 figure.slider img {
     width: 80%;
     height: auto;
}
 figure.slider figure figcaption {
     position: absolute;
     bottom: 0;
     background: rgba(0,0,0,0.4);
     color: #fff;
     width: 100%;
     font-size: 2rem;
     padding: .6rem;
}

CSS3 关键帧:

@keyframes slidy {
    0% { left: 0%; }
    10% { left: 0%; }
    25% { left: -100%; }
    45% { left: -100%; }
    50% { left: -200%; }
    70% { left: -200%; }
    75% { left: -300%; }
    95% { left: -300%; }
    100% { left: -400%; }
}

最佳答案

我不知道您的图片大小,但下面是一个使用 150 像素宽图片的示例。希望这会有所帮助。

body {
  padding: 0;
  margin: 0;
}

figure.slider {
  position: relative;
  width: 1500px;
  font-size: 0;
  display: flex;
  animation: 30s slidy infinite;
  margin: 0;
}

figure.slider figure {
  width: 150px;
  display: inline-block;
  position: inherit;
  margin: 0;
  padding: 0;
}

@keyframes slidy {
  0% {
    left: 0;
  }
  10% {
    left: -150px;
  }
  20% {
    left: -300px;
  }
  30% {
    left: -450px;
  }
  40% {
    left: -600px;
  }
  50% {
    left: -750px;
  }
  60% {
    left: -900px;
  }
  70% {
    left: -1050px;
  }
  80% {
    left: -1200px;
  }
  90% {
    left: -1350px;
  }
  100% {
    left: -1500px;
  }
}
<div id="captioned-gallery">
  <figure class="slider">
    <figure> <img src="http://via.placeholder.com/150x50/0000ff" alt=""> </figure>
    <figure> <img src="http://via.placeholder.com/150x50/00ff00" alt=""> </figure>
    <figure> <img src="http://via.placeholder.com/150x50/ff0000" alt=""> </figure>
    <figure> <img src="http://via.placeholder.com/150x50/00ffff" alt=""> </figure>
    <figure> <img src="http://via.placeholder.com/150x50/ffff00" alt=""> </figure>
    <figure> <img src="http://via.placeholder.com/150x50/ff00ff" alt=""> </figure>
    <figure> <img src="http://via.placeholder.com/150x50/0000ff" alt=""> </figure>
    <figure> <img src="http://via.placeholder.com/150x50/00ff00" alt=""> </figure>
    <figure> <img src="http://via.placeholder.com/150x50/ff0000" alt=""> </figure>
    <figure> <img src="http://via.placeholder.com/150x50/00ffff" alt=""> </figure>
  </figure>
</div>

关于css - 我如何计算 10 张幻灯片的纯 css3 slider 的百分比,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/50089551/

相关文章:

css - div 移动到任何内容的页面底部

php - 如何通过 HTML/CSS 使图片响应于 wordpress 自定义帖子类型

jquery - (Wordpress) 图像到 Work 的附件但未出现在 slider 中

flutter - just_audio - 完成后的音频播放器,从头开始

javascript - React-Slick Carousel - 禁用键盘箭头

python - 使用 Matplotlib Slider 更改曲面

ios - Material 选择在 iOS 上闪烁

html - 在文字上方加一行

javascript - 为什么绝对定位的父项中的百分比宽度子项在 IE 中不起作用?

javascript - 渲染父组件后如何重置 native slider (子组件)?