StyleKit
风格库模板社区生成器素材库GitHub
风格目录/垂直时间线布局

垂直时间线布局

Vertical Timeline

C
74/100一般

垂直时间轴布局,通过连接线串联时间节点,适合展示历史进程、项目里程碑、工作经历、流程步骤。

时间线历程里程碑流程步骤进度
查看完整 Showcase →对比

配色方案

Primary

#1e293b

Secondary

#f8fafc

Accent 1

#3b82f6

Accent 2

#10b981

Accent 3

#f59e0b

Accent 4

#ef4444

提示词

硬性 + 软性提示词

一键复制并生成 垂直时间线布局 风格界面。硬性提示词用于强约束一致性,软性提示词用于保留风格方向下的灵活实现。

硬性提示词

高一致性,严格执行风格规则

STYLEKIT_STYLE_REFERENCE
style_name: 垂直时间线布局
style_slug: timeline-vertical
style_source: /styles/timeline-vertical

# Hard Prompt

请严格遵守以下风格规则并保持一致性,禁止风格漂移。

## 执行要求
- 优先保证风格一致性,其次再做创意延展。
- 遇到冲突时以禁止项为最高优先级。
- 输出前自检:颜色、排版、间距、交互是否仍属于该风格。

## Style Rules
# Vertical Timeline (垂直时间线布局) Design System

> 垂直时间轴布局,通过连接线串联时间节点,适合展示历史进程、项目里程碑、工作经历、流程步骤。

## 核心理念

Vertical Timeline(垂直时间线布局)是一种用于展示时间序列或流程步骤的布局方式,通过视觉连接线引导阅读。

核心理念:
- 线性叙事:清晰的时间或流程顺序
- 节点突出:每个重要时刻都有明确标记
- 连接关系:视觉线条串联所有事件
- 渐进展示:支持滚动触发动画

---

## Token 字典(精确 Class 映射)

### 边框
```
宽度: border
颜色: border-zinc-100
圆角: rounded-xl
```

### 阴影
```
小:   shadow-sm
中:   shadow-sm
大:   shadow-md
悬停: hover:shadow-md
聚焦: focus:shadow-sm
```

### 交互效果
```
悬停位移: hover:-translate-y-0.5
过渡动画: transition-all duration-300
按下状态: active:scale-95
```

### 字体
```
标题: font-semibold tracking-tight
正文: font-sans
```

### 字号
```
Hero:  text-3xl md:text-4xl lg:text-5xl
H1:    text-2xl md:text-3xl
H2:    text-xl md:text-2xl
H3:    text-lg md:text-xl
正文:  text-sm md:text-base
小字:  text-xs md:text-sm
```

### 间距
```
Section: py-12 md:py-16 lg:py-20
容器:    px-4 md:px-6 lg:px-8
卡片:    p-6
```

---

## [FORBIDDEN] 绝对禁止

以下 class 在本风格中**绝对禁止使用**,生成时必须检查并避免:

### 禁止的 Class
- `rounded-none`
- `border-4`
- `border-8`
- `shadow-2xl`
- `font-black`

### 禁止的模式
- 匹配 `^border-[48]`
- 匹配 `^shadow-2xl`

### 禁止原因
- `rounded-none`: Timeline Vertical uses soft rounded corners (rounded-xl) for cards
- `border-4`: Timeline Vertical uses subtle thin borders (border)
- `shadow-2xl`: Timeline Vertical uses subtle shadows, not dramatic ones

> WARNING: 如果你的代码中包含以上任何 class,必须立即替换。

---

## [REQUIRED] 必须包含

### 按钮必须包含
```
inline-flex items-center gap-2
text-sm font-medium
text-blue-600
transition-colors
```

### 卡片必须包含
```
relative
bg-white
rounded-xl
shadow-sm
border border-zinc-100
```

### 输入框必须包含
```
border border-zinc-200
rounded-lg
text-zinc-900
focus:outline-none
focus:ring-2 focus:ring-blue-500/20 focus:border-blue-500
```

---

## [COMPARE] 错误 vs 正确对比

### 按钮

[WRONG] **错误示例**(使用了圆角和模糊阴影):
```html
<button class="rounded-lg shadow-lg bg-blue-500 text-white px-4 py-2 hover:bg-blue-600">
  点击我
</button>
```

[CORRECT] **正确示例**(使用硬边缘、无圆角、位移效果):
```html
<button class="inline-flex items-center gap-2 text-sm font-medium text-blue-600 transition-colors bg-[#ff006e] text-white px-4 py-2 md:px-6 md:py-3">
  点击我
</button>
```

### 卡片

[WRONG] **错误示例**(使用了渐变和圆角):
```html
<div class="rounded-xl shadow-2xl bg-gradient-to-r from-purple-500 to-pink-500 p-6">
  <h3 class="text-xl font-semibold">标题</h3>
</div>
```

[CORRECT] **正确示例**(纯色背景、硬边缘阴影):
```html
<div class="relative bg-white rounded-xl shadow-sm border border-zinc-100 p-6">
  <h3 class="font-semibold tracking-tight text-lg md:text-xl">标题</h3>
</div>
```

### 输入框

[WRONG] **错误示例**(灰色边框、圆角):
```html
<input class="rounded-md border border-gray-300 px-3 py-2 focus:ring-2 focus:ring-blue-500" />
```

[CORRECT] **正确示例**(黑色粗边框、聚焦阴影):
```html
<input class="border border-zinc-200 rounded-lg text-zinc-900 focus:outline-none focus:ring-2 focus:ring-blue-500/20 focus:border-blue-500 px-3 py-2 md:px-4 md:py-3" placeholder="请输入..." />
```

---

## [TEMPLATES] 页面骨架模板

使用以下模板生成页面,只需替换 `{PLACEHOLDER}` 部分:

### 导航栏骨架
```html
<nav class="bg-white border-b-2 md:border-b-4 border-black px-4 md:px-8 py-3 md:py-4">
  <div class="flex items-center justify-between max-w-6xl mx-auto">
    <a href="/" class="font-black text-xl md:text-2xl tracking-wider">
      {LOGO_TEXT}
    </a>
    <div class="flex gap-4 md:gap-8 font-mono text-sm md:text-base">
      {NAV_LINKS}
    </div>
  </div>
</nav>
```

### Hero 区块骨架
```html
<section class="min-h-[60vh] md:min-h-[80vh] flex items-center px-4 md:px-8 py-12 md:py-0 bg-{ACCENT_COLOR} border-b-2 md:border-b-4 border-black">
  <div class="max-w-4xl mx-auto">
    <h1 class="font-black text-4xl md:text-6xl lg:text-8xl leading-tight tracking-tight mb-4 md:mb-6">
      {HEADLINE}
    </h1>
    <p class="font-mono text-base md:text-xl max-w-xl mb-6 md:mb-8">
      {SUBHEADLINE}
    </p>
    <button class="bg-black text-white font-black px-6 py-3 md:px-8 md:py-4 border-2 md:border-4 border-black shadow-[4px_4px_0px_0px_rgba(255,0,110,1)] md:shadow-[8px_8px_0px_0px_rgba(255,0,110,1)] hover:shadow-none hover:translate-x-[2px] hover:translate-y-[2px] transition-all text-sm md:text-base">
      {CTA_TEXT}
    </button>
  </div>
</section>
```

### 卡片网格骨架
```html
<section class="py-12 md:py-24 px-4 md:px-8">
  <div class="max-w-6xl mx-auto">
    <h2 class="font-black text-2xl md:text-4xl mb-8 md:mb-12">{SECTION_TITLE}</h2>
    <div class="grid grid-cols-1 md:grid-cols-2 lg:grid-cols-3 gap-4 md:gap-6">
      <!-- Card template - repeat for each card -->
      <div class="bg-white border-2 md:border-4 border-black shadow-[4px_4px_0px_0px_rgba(0,0,0,1)] md:shadow-[8px_8px_0px_0px_rgba(0,0,0,1)] p-4 md:p-6 hover:shadow-[4px_4px_0px_0px_rgba(255,0,110,1)] md:hover:shadow-[8px_8px_0px_0px_rgba(255,0,110,1)] hover:-translate-y-1 transition-all">
        <h3 class="font-black text-lg md:text-xl mb-2">{CARD_TITLE}</h3>
        <p class="font-mono text-sm md:text-base text-gray-700">{CARD_DESCRIPTION}</p>
      </div>
    </div>
  </div>
</section>
```

### 页脚骨架
```html
<footer class="bg-black text-white py-12 md:py-16 px-4 md:px-8 border-t-2 md:border-t-4 border-black">
  <div class="max-w-6xl mx-auto">
    <div class="grid grid-cols-1 md:grid-cols-3 gap-8">
      <div>
        <span class="font-black text-xl md:text-2xl">{LOGO_TEXT}</span>
        <p class="font-mono text-sm mt-4 text-gray-400">{TAGLINE}</p>
      </div>
      <div>
        <h4 class="font-black text-lg mb-4">{COLUMN_TITLE}</h4>
        <ul class="space-y-2 font-mono text-sm text-gray-400">
          {FOOTER_LINKS}
        </ul>
      </div>
    </div>
  </div>
</footer>
```

---

## [CHECKLIST] 生成后自检清单

**在输出代码前,必须逐项验证以下每一条。如有违反,立即修正后再输出:**

### 1. 圆角检查
- [ ] 搜索代码中的 `rounded-`
- [ ] 确认只有 `rounded-none` 或无圆角
- [ ] 如果发现 `rounded-lg`、`rounded-md` 等,替换为 `rounded-none`

### 2. 阴影检查
- [ ] 搜索代码中的 `shadow-`
- [ ] 确认只使用 `shadow-[Xpx_Xpx_0px_0px_rgba(...)]` 格式
- [ ] 如果发现 `shadow-lg`、`shadow-xl` 等,替换为正确格式

### 3. 边框检查
- [ ] 搜索代码中的 `border-`
- [ ] 确认边框颜色是 `border-black`
- [ ] 如果发现 `border-gray-*`、`border-slate-*`,替换为 `border-black`

### 4. 交互检查
- [ ] 所有按钮都有 `hover:shadow-none hover:translate-x-[2px] hover:translate-y-[2px]`
- [ ] 所有卡片都有 hover 效果(阴影变色或位移)
- [ ] 都包含 `transition-all`

### 5. 响应式检查
- [ ] 边框有 `border-2 md:border-4`
- [ ] 阴影有 `shadow-[4px...] md:shadow-[8px...]`
- [ ] 间距有 `p-4 md:p-6` 或类似的响应式值
- [ ] 字号有 `text-sm md:text-base` 或类似的响应式值

### 6. 字体检查
- [ ] 标题使用 `font-black`
- [ ] 正文使用 `font-mono`

> CRITICAL: **如果任何一项检查不通过,必须修正后重新生成代码。**

---

## [EXAMPLES] 示例 Prompt

### 1. 公司发展历程

展示公司重要里程碑

```
Create a company history timeline:
1. Vertical timeline with central line
2. Alternating left/right layout on desktop
3. Single side on mobile
4. Each node: year, event title, description
5. Different node colors for different types (funding, product, team)
6. Scroll animation: fade in as visible
7. Year navigation at top
Use subtle colors, professional styling
```

### 2. 工作经历

简历中的职业时间线

```
Create a career timeline for resume:
1. Single-side vertical timeline
2. Each node: date range, company, role, achievements
3. Company logo in node instead of dot
4. Current job highlighted
5. Skills tags for each role
6. Smooth scroll animation
7. Download resume button at end
Clean minimal design, professional look
```

### 3. 项目进度

项目阶段的流程展示

```
Create a project progress timeline:
1. Vertical timeline showing project phases
2. Nodes: phase number, name, status (complete/current/upcoming)
3. Complete phases: green nodes with checkmark
4. Current phase: blue pulsing node
5. Upcoming: gray nodes
6. Progress percentage at top
7. Click node to expand details
Interactive with hover states
```

软性提示词

保留风格方向,允许实现灵活

STYLEKIT_STYLE_REFERENCE
style_name: 垂直时间线布局
style_slug: timeline-vertical
style_source: /styles/timeline-vertical

# Soft Prompt

保持整体风格气质即可,允许实现细节灵活调整,但不要偏离核心视觉语言。

## Style Signals
- 时间线
- 历程
- 里程碑
- 流程
- 步骤
- 进度

## Prefer
- 使用伪元素或 div 创建中央连接线
- 节点圆点与连接线对齐
- 左右交替布局增加视觉变化
- 移动端改为单侧布局

## Avoid
- 禁止连接线断裂或不对齐
- 禁止节点大小不一致
- 禁止移动端保持双侧布局

## Output Guidance
- 先保证整体风格识别度,再优化细节。
- 避免过度炫技,保持可读性与可维护性。

设计哲学

Vertical Timeline(垂直时间线布局)是一种用于展示时间序列或流程步骤的布局方式,通过视觉连接线引导阅读。

核心理念: - 线性叙事:清晰的时间或流程顺序 - 节点突出:每个重要时刻都有明确标记 - 连接关系:视觉线条串联所有事件 - 渐进展示:支持滚动触发动画

必须做 / Do's

  • +使用伪元素或 div 创建中央连接线
  • +节点圆点与连接线对齐
  • +左右交替布局增加视觉变化
  • +移动端改为单侧布局
  • +添加滚动触发的入场动画
  • +节点使用统一的时间/序号格式
  • +连接线使用柔和颜色不喧宾夺主
  • +卡片 hover 时节点需同步高亮或放大,建立轴线联动感
  • +卡片 hover 可轻微沿水平轴外移,表达历史节点被拉出审视
  • +交互过渡使用 duration-200 ease-out,保障快速时间浏览

禁止做 / Don'ts

  • -禁止连接线断裂或不对齐
  • -禁止节点大小不一致
  • -禁止移动端保持双侧布局
  • -禁止忽略时间/序号标识
  • -禁止内容过长导致连接线过长
  • -禁止节点与卡片交互脱节(仅卡片变化)
  • -禁止使用迟缓或拖泥带水的过渡时序

组件模板

组件预览

时间线按钮

时间线节点中的操作按钮

tsx
<button className="
  inline-flex items-center gap-2
  px-4 py-2
  text-sm font-medium
  text-blue-600
  hover:text-blue-700
  transition-colors
">
  <span>View Details</span>
  <svg className="w-4 h-4" fill="none" stroke="currentColor" viewBox="0 0 24 24">
    <path strokeLinecap="round" strokeLinejoin="round" strokeWidth={2} d="M9 5l7 7-7 7" />
  </svg>
</button>

全局样式

全局 CSS

css
/* Vertical Timeline Global Styles */

/* Timeline container */
.timeline {
  position: relative;
  padding-left: 2rem;
}

/* Central line */
.timeline::before {
  content: '';
  position: absolute;
  left: 0.5rem;
  top: 0;
  bottom: 0;
  width: 2px;
  background: #e2e8f0;
}

/* Timeline item */
.timeline-item {
  position: relative;
  padding-left: 2rem;
  padding-bottom: 2rem;
}

/* Node dot */
.timeline-item::before {
  content: '';
  position: absolute;
  left: -0.5rem;
  top: 0.5rem;
  width: 1rem;
  height: 1rem;
  border-radius: 50%;
  background: #3b82f6;
  border: 4px solid white;
  box-shadow: 0 2px 4px rgba(0, 0, 0, 0.1);
}

/* Alternating layout for desktop */
@media (min-width: 768px) {
  .timeline-alternating {
    padding-left: 0;
  }

  .timeline-alternating::before {
    left: 50%;
    transform: translateX(-50%);
  }

  .timeline-alternating .timeline-item {
    width: 50%;
    padding-left: 0;
    padding-right: 2rem;
  }

  .timeline-alternating .timeline-item:nth-child(even) {
    margin-left: 50%;
    padding-left: 2rem;
    padding-right: 0;
  }

  .timeline-alternating .timeline-item::before {
    left: auto;
    right: -0.5rem;
  }

  .timeline-alternating .timeline-item:nth-child(even)::before {
    left: -0.5rem;
    right: auto;
  }
}

/* Scroll animation */
.timeline-item {
  opacity: 0;
  transform: translateY(20px);
  transition: opacity 0.5s ease, transform 0.5s ease;
}

.timeline-item.in-view {
  opacity: 1;
  transform: translateY(0);
}

/* Node color variants */
.timeline-item[data-status="complete"]::before {
  background: #10b981;
}

.timeline-item[data-status="current"]::before {
  background: #3b82f6;
  box-shadow: 0 0 0 4px rgba(59, 130, 246, 0.2);
}

.timeline-item[data-status="upcoming"]::before {
  background: #d1d5db;
}

兼容的视觉风格

试试搭配

垂直时间线布局 是一种布局模式,可以与以下视觉风格搭配使用。

编辑杂志风

Editorial

企业简洁风

Corporate Clean

极简扁平风

Minimalist Flat

柔和界面风

Soft UI

自然有机风

Natural Organic

无障碍

无障碍评分

基于颜色对比度和排版可读性的 WCAG 2.1 合规分析。

74

综合评分

等级: C - 一般

对比度

分数: 73/100平均比率: 7.69:1
AA 未通过AAA 未通过
场景颜色比率AAAAA
Text on secondary background
/#18181b / #ffffff
17.72:1
Button primary
/#ffffff / #3b82f6
3.68:1
Text on accent 1
/#18181b / #3b82f6
4.82:1
Text on accent 2
/#18181b / #10b981
6.98:1
Text on accent 3
/#18181b / #f59e0b
8.25:1
Text on accent 4
/#18181b / #ef4444
4.71:1

可读性

分数

77/100

字号

text-sm md:text-base

字重

font-semibold tracking-tight

行高

default

评分基于 WCAG 2.1 标准。AA 级要求普通文本对比度 4.5:1、大文本 3:1;AAA 级要求普通文本 7:1、大文本 4.5:1。

IDE 集成

IDE 配置导出

下载 AI 编码助手的配置文件,使其按照此风格生成代码。

风格包

导出风格包

获取完整的可机器读取风格资源,包括 Design Tokens、Tailwind 预设、CSS 变量和 shadcn/ui 主题。

Metadata

Style metadata including version information

Design Tokens

Figma / Style Dictionary / Tokens Studio 兼容

Tailwind Preset

Tailwind CSS 主题预设,可直接在配置中引用

Global CSS

包含 CSS 变量和基础样式

shadcn Theme

shadcn/ui 主题配置

CSS Variables

纯 CSS 变量,适用于任何项目

SKILL.md

可加载到 Cursor / Claude Code / VS Code 的技能包

社区

评分与反馈

登录后评分
0 条评论
登录后才能发表评论。 去登录

StyleKit

精选网页设计风格库,帮助 AI 生成更好看的网站。

导航

风格库模板对比

资源

GitHub 仓库

(c) 2026 StyleKit. 开源项目。

基于 Editorial 风格构建