You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何修改Shepherd JS引导组件的颜色与样式设置

修改Shepherd JS引导组件样式的方法

1. 直接用CSS覆盖默认样式

Shepherd的UI元素都带有特定类名,直接针对这些类写CSS就能修改样式,比如把「下一步」按钮改成黄色:

/* 修改下一步按钮背景色 */
.shepherd-button--next {
  background-color: #ffd700 !important;
  border-color: #ffd700 !important;
}

/* 按钮悬停状态 */
.shepherd-button--next:hover {
  background-color: #ffcc00 !important;
  border-color: #ffcc00 !important;
}

其他常见元素的类名:

  • 弹窗遮罩层:.shepherd-modal-overlay
  • 弹窗主体容器:.shepherd-element
  • 弹窗标题:.shepherd-header-title
  • 弹窗内容:.shepherd-text

2. 给步骤添加自定义类名(不影响全局样式)

在配置defaultStepOptions或单个步骤时,通过classes属性添加自定义类,再针对该类写样式,适合不同引导流程用不同样式:

// 全局默认步骤添加自定义类
const tour = new Shepherd.Tour({
  defaultStepOptions: {
    classes: 'custom-yellow-theme',
    // 其他配置项...
  }
});

// 单个步骤单独设置类
tour.addStep({
  title: '示例步骤',
  text: '这个步骤的按钮是黄色的',
  classes: 'yellow-button-step',
  // 其他配置项...
});

对应的CSS:

.custom-yellow-theme .shepherd-button--next {
  background-color: #ffd700;
  border-color: #ffd700;
}

.yellow-button-step .shepherd-button--next {
  background-color: #ffd700;
}

3. SCSS项目直接覆盖变量(推荐)

如果你的项目使用SCSS,可以直接覆盖Shepherd提供的内置变量,编译后自动替换默认样式,无需!important:

// 覆盖按钮相关变量
$shepherd-button-background: #ffd700;
$shepherd-button-hover-background: #ffcc00;
$shepherd-button-border-color: #ffd700;

// 导入Shepherd的SCSS文件
@import 'shepherd.js/dist/css/shepherd.css';

内容的提问来源于stack exchange,提问作者Ji Lin

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.07.28 12:02:49