ElementUI浅尝辄止14:Carousel 走马灯

在有限空间内,循环播放同一类型的图片、文字等内容

1.如何使用?

结合使用el-carouselel-carousel-item标签就得到了一个走马灯。幻灯片的内容是任意的,需要放在el-carousel-item标签中。默认情况下,在鼠标 hover 时底部的指示器时就会触发切换。通过设置trigger属性为click,可以达到点击触发的效果。

javascript 复制代码
<template>
  <div class="block">
    <span class="demonstration">默认 Hover 指示器触发</span>
    <el-carousel height="150px">
      <el-carousel-item v-for="item in 4" :key="item">
        <h3 class="small">{{ item }}</h3>
      </el-carousel-item>
    </el-carousel>
  </div>
  <div class="block">
    <span class="demonstration">Click 指示器触发</span>
    <el-carousel trigger="click" height="150px">
      <el-carousel-item v-for="item in 4" :key="item">
        <h3 class="small">{{ item }}</h3>
      </el-carousel-item>
    </el-carousel>
  </div>
</template>

<style>
  .el-carousel__item h3 {
    color: #475669;
    font-size: 14px;
    opacity: 0.75;
    line-height: 150px;
    margin: 0;
  }

  .el-carousel__item:nth-child(2n) {
     background-color: #99a9bf;
  }
  
  .el-carousel__item:nth-child(2n+1) {
     background-color: #d3dce6;
  }
</style>

2.轮播指示器

可以将指示器的显示位置设置在容器外部

javascript 复制代码
//indicator-position属性定义了指示器的位置。默认情况下,
//它会显示在走马灯内部,设置为outside则会显示在外部;设置为none则不会显示指示器。

<template>
  <el-carousel indicator-position="outside">
    <el-carousel-item v-for="item in 4" :key="item">
      <h3>{{ item }}</h3>
    </el-carousel-item>
  </el-carousel>
</template>

<style>
  .el-carousel__item h3 {
    color: #475669;
    font-size: 18px;
    opacity: 0.75;
    line-height: 300px;
    margin: 0;
  }
  
  .el-carousel__item:nth-child(2n) {
    background-color: #99a9bf;
  }
  
  .el-carousel__item:nth-child(2n+1) {
    background-color: #d3dce6;
  }
</style>

3.轮播切换箭头

可以设置切换箭头的显示时机

javascript 复制代码
//arrow属性定义了切换箭头的显示时机。默认情况下,
//切换箭头只有在鼠标 hover 到走马灯上时才会显示;
//若将arrow设置为always,则会一直显示;设置为never,则会一直隐藏。

<template>
  <el-carousel :interval="5000" arrow="always">
    <el-carousel-item v-for="item in 4" :key="item">
      <h3>{{ item }}</h3>
    </el-carousel-item>
  </el-carousel>
</template>

<style>
  .el-carousel__item h3 {
    color: #475669;
    font-size: 18px;
    opacity: 0.75;
    line-height: 300px;
    margin: 0;
  }
  
  .el-carousel__item:nth-child(2n) {
    background-color: #99a9bf;
  }
  
  .el-carousel__item:nth-child(2n+1) {
    background-color: #d3dce6;
  }
</style>

4.卡片化

当页面宽度方向空间空余,但高度方向空间匮乏时,可使用卡片风格

javascript 复制代码
//将type属性设置为card即可启用卡片模式。从交互上来说,
//卡片模式和一般模式的最大区别在于,可以通过直接点击两侧的幻灯片进行切换。

<template>
  <el-carousel :interval="4000" type="card" height="200px">
    <el-carousel-item v-for="item in 6" :key="item">
      <h3 class="medium">{{ item }}</h3>
    </el-carousel-item>
  </el-carousel>
</template>

<style>
  .el-carousel__item h3 {
    color: #475669;
    font-size: 14px;
    opacity: 0.75;
    line-height: 200px;
    margin: 0;
  }
  
  .el-carousel__item:nth-child(2n) {
    background-color: #99a9bf;
  }
  
  .el-carousel__item:nth-child(2n+1) {
    background-color: #d3dce6;
  }
</style>

5.方向

默认情况下,directionhorizontal。通过设置 directionvertical 来让走马灯在垂直方向上显示。

javascript 复制代码
<template>
  <el-carousel height="200px" direction="vertical" :autoplay="false">
    <el-carousel-item v-for="item in 3" :key="item">
      <h3 class="medium">{{ item }}</h3>
    </el-carousel-item>
  </el-carousel>
</template>

关于走马灯组件的 大致使用方式就是这些,深入浅出可以前往Carousel轮播组件

相关推荐
yingyima5 分钟前
Unix 时间戳转换实战:一次差点毁掉项目的低级错误
前端
盼兮31 分钟前
用AI编程从零搭建一个响应式数据看板
前端·人工智能·数据可视化
Lan.W32 分钟前
vue3-element-admin里新增mock接口一直没有生成,不生效
前端·javascript·vue.js·mock
小满zs33 分钟前
Next.js部署(Vercel)
前端·next.js
仙古.梦回~36 分钟前
vue-skills
前端·javascript·vue.js
倒霉熊dd1 小时前
Python 学习(第二部分:函数、模块与面向对象编程)
前端·数据库·python
gCode Teacher 格码致知1 小时前
Javascrip提高:CSS backdrop-filter的使用方法-由Deepseek产生
前端·css
清灵xmf1 小时前
JS 原生深拷贝的终极方案——structuredClone
前端·javascript·vue.js·json.stringify·structuredclone
索西引擎2 小时前
【理论】TypeScript 函数重载:从 Vue 3 defineEmits 说起的类型安全实践
前端·typescript
女生也可以敲代码2 小时前
2026前端面试题精选:大厂高频考点与标准答案
前端