当前位置:首页 > CSS

纯css制作幻灯片

2026-02-12 13:53:14CSS

纯CSS制作幻灯片的方法

使用纯CSS制作幻灯片可以通过CSS动画和关键帧实现自动轮播效果。以下是几种常见的方法:

纯css制作幻灯片

方法一:使用CSS动画和关键帧

通过@keyframes定义动画,结合animation属性实现自动轮播。

纯css制作幻灯片

<div class="slider">
  <div class="slide slide1"></div>
  <div class="slide slide2"></div>
  <div class="slide slide3"></div>
</div>
.slider {
  width: 100%;
  height: 300px;
  position: relative;
  overflow: hidden;
}

.slide {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  animation: slide 9s infinite;
}

.slide1 {
  background: #ff6b6b;
  animation-delay: 0s;
}

.slide2 {
  background: #4ecdc4;
  animation-delay: 3s;
}

.slide3 {
  background: #45aaf2;
  animation-delay: 6s;
}

@keyframes slide {
  0% { opacity: 0; }
  10% { opacity: 1; }
  30% { opacity: 1; }
  40% { opacity: 0; }
  100% { opacity: 0; }
}

方法二:使用:target伪类实现手动切换

通过锚点链接和:target伪类实现手动切换幻灯片效果。

<div class="slider">
  <div id="slide1" class="slide"></div>
  <div id="slide2" class="slide"></div>
  <div id="slide3" class="slide"></div>
</div>
<div class="controls">
  <a href="#slide1">1</a>
  <a href="#slide2">2</a>
  <a href="#slide3">3</a>
</div>
.slider {
  width: 100%;
  height: 300px;
  position: relative;
  overflow: hidden;
}

.slide {
  width: 100%;
  height: 100%;
  position: absolute;
  top: 0;
  left: 0;
  opacity: 0;
  transition: opacity 1s;
}

.slide:target {
  opacity: 1;
}

#slide1 { background: #ff6b6b; }
#slide2 { background: #4ecdc4; }
#slide3 { background: #45aaf2; }

方法三:使用复选框和:checked伪类

通过隐藏的复选框和label标签实现幻灯片切换。

<div class="slider">
  <input type="radio" name="slider" id="slide1" checked>
  <input type="radio" name="slider" id="slide2">
  <input type="radio" name="slider" id="slide3">

  <div class="slides">
    <div class="slide slide1"></div>
    <div class="slide slide2"></div>
    <div class="slide slide3"></div>
  </div>

  <div class="controls">
    <label for="slide1"></label>
    <label for="slide2"></label>
    <label for="slide3"></label>
  </div>
</div>
.slider {
  width: 100%;
  height: 300px;
  position: relative;
  overflow: hidden;
}

input[type="radio"] {
  display: none;
}

.slides {
  width: 300%;
  height: 100%;
  display: flex;
  transition: transform 1s;
}

.slide {
  width: 33.333%;
  height: 100%;
}

#slide1:checked ~ .slides {
  transform: translateX(0);
}

#slide2:checked ~ .slides {
  transform: translateX(-33.333%);
}

#slide3:checked ~ .slides {
  transform: translateX(-66.666%);
}

.slide1 { background: #ff6b6b; }
.slide2 { background: #4ecdc4; }
.slide3 { background: #45aaf2; }

.controls {
  position: absolute;
  bottom: 10px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
}

.controls label {
  width: 12px;
  height: 12px;
  margin: 0 5px;
  border-radius: 50%;
  background: #fff;
  cursor: pointer;
}

注意事项

  • 纯CSS幻灯片功能较为基础,无法实现复杂的交互效果。
  • 自动轮播的时间通过animation-delay@keyframes控制,调整时间需同步修改。
  • 手动切换方案依赖用户操作,适合简单的展示场景。
  • 对于更复杂的需求,建议结合JavaScript实现。

标签: 幻灯片css
分享给朋友:

相关文章

css动画制作

css动画制作

CSS动画制作方法 使用@keyframes规则定义动画序列,通过animation属性将动画应用到元素上。以下是一个基础示例: @keyframes fadeIn { from { opaci…

纯css制作下拉菜单

纯css制作下拉菜单

纯CSS下拉菜单实现方法 通过CSS的:hover伪类和display属性可以实现纯CSS下拉菜单,无需JavaScript。以下是具体实现方式: HTML结构示例: <nav class=…

css制作扇形

css制作扇形

使用 CSS 制作扇形 方法一:利用 border-radius 和 transform 通过设置 border-radius 和 transform 属性,可以创建一个扇形。以下是一个示例代码:…

css继承制作教程

css继承制作教程

CSS继承的基本概念 CSS继承是指某些CSS属性可以从父元素传递到子元素的特性。并非所有属性都支持继承,但常见的文本相关属性(如font-family、color)默认具有继承性。通过合理利用继承,…

css背景图片制作

css背景图片制作

使用CSS设置背景图片 在CSS中,可以通过background-image属性为元素添加背景图片。以下是一个基本示例: .element { background-image: url('pa…

css尾部制作

css尾部制作

如何制作CSS尾部(页脚) 固定定位法 将页脚固定在页面底部,无论内容多少。使用position: fixed结合bottom: 0实现: footer { position: fixed;…