前端开发社区前端开发社区
  • 首页
  • VUE.js
  • React.js
  • HTML
  • CSS
  • JavaScript
  • PHP
  • jquery
  • Java
  • MySQL
  • uniapp
前端开发社区
当前位置:首页 > CSS

css轮播制作教程

2026-03-12 15:29:30CSS

基础轮播结构

使用HTML创建轮播容器和图片列表,CSS设置基本样式和布局:

<div class="carousel">
  <div class="carousel-inner">
    <img src="image1.jpg" class="active">
    <img src="image2.jpg">
    <img src="image3.jpg">
  </div>
</div>
.carousel {
  width: 600px;
  height: 400px;
  overflow: hidden;
  position: relative;
}
.carousel-inner {
  display: flex;
  transition: transform 0.5s ease;
}
.carousel-inner img {
  width: 100%;
  flex-shrink: 0;
}

自动轮播动画

通过CSS动画实现自动轮播效果:

css轮播制作教程

@keyframes slide {
  0%, 25% { transform: translateX(0); }
  30%, 55% { transform: translateX(-100%); }
  60%, 85% { transform: translateX(-200%); }
  90%, 100% { transform: translateX(0); }
}
.carousel-inner {
  animation: slide 10s infinite;
}

导航按钮控制

添加左右导航按钮并设置悬停样式:

.carousel-btn {
  position: absolute;
  top: 50%;
  transform: translateY(-50%);
  background: rgba(0,0,0,0.5);
  color: white;
  border: none;
  padding: 10px;
  cursor: pointer;
  z-index: 10;
}
.prev { left: 10px; }
.next { right: 10px; }
.carousel-btn:hover {
  background: rgba(0,0,0,0.8);
}

指示器样式

创建底部轮播指示点:

css轮播制作教程

.carousel-indicators {
  position: absolute;
  bottom: 20px;
  left: 50%;
  transform: translateX(-50%);
  display: flex;
}
.indicator {
  width: 12px;
  height: 12px;
  border-radius: 50%;
  background: rgba(255,255,255,0.5);
  margin: 0 5px;
  cursor: pointer;
}
.indicator.active {
  background: white;
}

响应式设计

使用媒体查询适配不同屏幕尺寸:

@media (max-width: 768px) {
  .carousel {
    width: 100%;
    height: 300px;
  }
  .carousel-btn {
    padding: 8px;
    font-size: 14px;
  }
}

完整JavaScript控制

添加交互控制功能:

document.addEventListener('DOMContentLoaded', function() {
  const inner = document.querySelector('.carousel-inner');
  const items = document.querySelectorAll('.carousel-inner img');
  const prevBtn = document.querySelector('.prev');
  const nextBtn = document.querySelector('.next');
  const indicators = document.querySelectorAll('.indicator');

  let currentIndex = 0;

  function updateCarousel() {
    inner.style.transform = `translateX(-${currentIndex * 100}%)`;
    indicators.forEach((ind, i) => {
      ind.classList.toggle('active', i === currentIndex);
    });
  }

  nextBtn.addEventListener('click', () => {
    currentIndex = (currentIndex + 1) % items.length;
    updateCarousel();
  });

  prevBtn.addEventListener('click', () => {
    currentIndex = (currentIndex - 1 + items.length) % items.length;
    updateCarousel();
  });

  indicators.forEach((ind, i) => {
    ind.addEventListener('click', () => {
      currentIndex = i;
      updateCarousel();
    });
  });
});

标签: 制作教程css
分享给朋友:

相关文章

css样式制作

css样式制作

CSS 样式制作基础 CSS(层叠样式表)用于控制网页的视觉呈现。通过选择器和属性组合,可以精确调整元素的布局、颜色、字体等样式。 选择器类型 元素选择器:p { color: red; } 选中…

css怎么制作表格

css怎么制作表格

使用HTML和CSS创建表格 HTML提供<table>标签用于创建表格结构,结合CSS可以自定义样式。以下是基本实现方法: HTML结构 <table> <th…

网页制作中css中运行

网页制作中css中运行

CSS 动画基础 CSS 动画通过 @keyframes 和 animation 属性实现动态效果。@keyframes 定义动画关键帧,animation 控制动画的持续时间、速度曲线等。 定…

css下拉箭头的制作

css下拉箭头的制作

使用伪元素制作下拉箭头 通过CSS的::after或::before伪元素结合边框属性创建箭头。设置元素的position: relative,伪元素使用绝对定位调整位置。 .dropdown {…

css网页制作

css网页制作

CSS 网页制作基础 CSS(层叠样式表)用于控制网页的视觉呈现,包括布局、颜色、字体等。以下为关键知识点和实用方法: 基本语法结构 CSS 规则由选择器和声明块组成: 选择器 { 属性: 值…

css制作网页

css制作网页

CSS 网页设计基础 CSS(层叠样式表)用于控制网页的视觉呈现,包括布局、颜色、字体等。以下为关键方法和示例: 基础结构 HTML 文件需链接 CSS: <link rel="styles…

最新文章
  • php实现问卷

    2026-03-12 17:26:14

  • php 商城实现

    2026-03-12 17:24:45

  • php实现委托

    2026-03-12 17:23:14

  • php实现菱形

    2026-03-12 17:21:29

  • php实现timespan

    2026-03-12 17:20:07

标签列表
  • vue (11735)
  • 原理 (539)
  • 分页 (525)
  • 跳转 (520)
  • 页面 (932)
  • 路由 (579)
  • 列表 (410)
  • 功能 (1106)
  • 文件 (390)
  • 项目 (446)
  • 菜单 (379)
  • 组件 (891)
  • 表格 (568)
  • 数据 (433)
  • 图片 (691)
  • js (3386)
  • 如何实现 (1470)
  • 效果 (534)
  • react (2988)
  • jquery (1394)
  • css (2128)
  • php (4004)
  • java (1887)
  • uniapp (1363)
  • elementui (828)

陕ICP备2023000799号  网站地图

Powered By Z-BlogPHP. Theme by TOYEAN.