当前位置:首页 > CSS

纯css制作幻灯片

2026-02-12 13:53:14CSS

纯CSS制作幻灯片的方法

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

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

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

<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

CSS基础语法 CSS规则由选择器和声明块组成。选择器指向需要设置样式的HTML元素,声明块包含一个或多个用分号分隔的声明。每个声明由属性和值组成,用冒号分隔。 选择器 { 属性: 值; 属…

css导航制作

css导航制作

基础导航栏制作 使用HTML的无序列表 <ul> 和 <li> 构建导航结构,CSS清除默认样式并横向排列: <nav> <ul class="navb…

空间css制作

空间css制作

空间 CSS 制作方法 使用 margin 和 padding 控制间距 通过调整 margin(外边距)和 padding(内边距)属性,可以控制元素之间的空间。例如: .element {…

css精灵图制作

css精灵图制作

CSS 精灵图制作方法 准备工具 图像编辑软件(如 Photoshop、GIMP 或在线工具) CSS 代码编辑器 步骤 收集图像资源 将需要合并的小图标或图片整理到一个文件夹中,确保这些图片…

纯css制作下拉菜单

纯css制作下拉菜单

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

css制作tab菜单

css制作tab菜单

CSS制作Tab菜单的方法 HTML结构 使用无序列表和div容器构建基础结构,列表项为标签页标题,div内放置对应内容块。 <ul class="tab-menu"> <l…