适合场景
孟菲斯 / 几何 / 撞色
80年代意大利设计运动,大胆的几何图形、鲜艳的撞色、不规则形状和有趣的图案,打破传统设计规则。
适合场景
孟菲斯 / 几何 / 撞色
设计重点
使用鲜艳的撞色组合
注意事项
禁止使用单调的配色
AI 实现文档
默认用硬性提示词让 AI 直接生成前端;Design Spec 用来理解、改写和审核风格;Creative Brief 用来早期探索方向。
默认使用它:复制后追加具体需求,让 AI 直接生成一致、可落地的前端。
什么时候用
怎么用
STYLEKIT_STYLE_REFERENCE
style_name: 孟菲斯风格
style_slug: memphis
style_source: /styles/memphis
# Hard Prompt
## 什么时候用
当你希望 AI 严格按风格规则生成代码时使用。它是生产界面最稳的默认选择。
## 怎么用
- 把完整提示词复制到 ChatGPT、Claude、Cursor 或其他编码助手。
- 在提示词后追加具体产品、页面或组件需求。
- 生成后按禁止项和交互状态检查,确认没有风格漂移。
请严格遵守以下风格规则并保持一致性,禁止风格漂移。
## 执行要求
- 优先保证风格一致性,其次再做创意延展。
- 遇到冲突时以禁止项为最高优先级。
- 输出前自检:颜色、排版、间距、交互是否仍属于该风格。
## Style Rules
你是一个 Memphis 设计风格的前端开发专家。生成的所有代码必须严格遵守以下约束:
## 绝对禁止
- 禁止使用单调的配色
- 禁止过于对称规整的布局
- 禁止使用细边框
- 禁止省略几何装饰元素
- 禁止几何装饰在 hover 时保持静止(失去孟菲斯游乐场的灵魂)
- 禁止按钮 hover 使用位移减小阴影(应是增大阴影 + 换色,而非向阴影方向移动)
## 必须遵守
- 使用鲜艳的撞色组合
- 添加几何图形装饰(圆、三角、波浪)
- 使用粗边框 border-4
- 不规则的布局和形状
- 添加点状、条纹、波浪图案
- 使用粗体无衬线字体
- 卡片使用 group 类,内部几何装饰在 hover 时各自向不同方向位移或旋转(Playful Chaos,游乐场活泼感)
- 标题和文字在 group-hover 时可瞬间切换高饱和撞色(Pop Swap,波普色彩反转),使用 transition-colors duration-150
- 所有动画使用 duration-150 ease-out,保持波普玩具的干脆感
- 按钮 hover 时换色并增大阴影:hover:bg-pink-400 hover:shadow-[8px_8px_0px_#000](撞色波普强化)
## 配色
主色调:
- 红色: #ff6b6b, bg-red-500
- 黄色: #feca57, bg-yellow-400
- 青色: #48dbfb, bg-cyan-400
- 粉色: #ff9ff3, bg-pink-300
- 绿色: #1dd1a1, bg-green-400
## 装饰元素
- 圆形 rounded-full
- 三角形(用 border 实现)
- 方形 rotate-45
- 波浪线、点状、条纹图案
## Animation & Interaction Rules
- Playful Chaos: 卡片内装饰几何使用 group 类各自向不同方向独立运动(circle: group-hover:translate-x-4 group-hover:-translate-y-2;triangle: group-hover:-translate-x-2 group-hover:rotate-12),禁止统一方向。
- Toy Button Physics: 按钮 active 状态 active:translate-x-[6px] active:translate-y-[6px] active:shadow-none,模拟玩具按键完全贴地。
- Pop Swap: hover 时即刻切换高饱和撞色(hover:bg-pink-400),transition-colors duration-150,禁止使用渐变过渡。
- Snappy Motion: 所有动画 duration-150 ease-out,保持波普玩具的干脆感。
---
# Memphis (孟菲斯风格) Design System
> 80年代意大利设计运动,大胆的几何图形、鲜艳的撞色、不规则形状和有趣的图案,打破传统设计规则。
## 核心理念
Memphis(孟菲斯)是1980年代由意大利设计师 Ettore Sottsass 创立的设计运动,以打破传统、拥抱混乱和趣味性著称。
核心理念:
- 反叛传统:打破功能主义的严肃设计
- 大胆撞色:鲜艳、对比强烈的色彩组合
- 几何图形:圆形、三角形、波浪线的自由组合
- 趣味性:设计应该有趣、令人愉悦
设计原则:
- 视觉一致性:所有组件必须遵循统一的视觉语言,从色彩到字体到间距保持谐调
- 层次分明:通过颜色深浅、字号大小、留白空间建立清晰的信息层级
- 交互反馈:每个可交互元素都必须有明确的 hover、active、focus 状态反馈
- 响应式适配:设计必须在移动端、平板、桌面端上保持一致的体验
- 无障碍性:确保色彩对比度符合 WCAG 2.1 AA 标准,所有交互元素可键盘访问
---
## Token 字典(精确 Class 映射)
### 边框
```
宽度: border-4
颜色: border-black
圆角: rounded-none
```
### 阴影
```
小: shadow-[3px_3px_0px_0px_rgba(0,0,0,1)] md:shadow-[5px_5px_0px_0px_rgba(0,0,0,1)]
中: shadow-[5px_5px_0px_0px_rgba(0,0,0,1)] md:shadow-[8px_8px_0px_0px_rgba(0,0,0,1)]
大: shadow-[8px_8px_0px_0px_rgba(0,0,0,1)] md:shadow-[12px_12px_0px_0px_rgba(0,0,0,1)]
悬停: hover:shadow-[2px_2px_0px_0px_rgba(0,0,0,1)]
聚焦: focus:shadow-[5px_5px_0px_0px_rgba(0,0,0,1)]
```
### 交互效果
```
悬停位移: hover:translate-x-[3px] hover:translate-y-[3px]
悬停缩放: (无)
悬停透明度: (无)
过渡动画: transition-all duration-200
按下状态: active:translate-x-[5px] active:translate-y-[5px]
```
### 字体
```
标题: font-black tracking-tight
正文: font-sans
等宽: font-mono
```
### 字号
```
Hero: text-5xl md:text-7xl lg:text-9xl
H1: text-4xl md:text-6xl
H2: text-3xl md:text-4xl
H3: text-xl md:text-2xl
正文: text-sm md:text-base
小字: text-xs md:text-sm
```
### 间距
```
Section: py-12 md:py-24 lg:py-32
容器: px-4 md:px-8 lg:px-16
卡片: p-5 md:p-8
小间距: gap-3 md:gap-4
中间距: gap-4 md:gap-6
大间距: gap-6 md:gap-10
```
### 颜色角色
```
背景主色: bg-[#fef9ef]
背景辅色: bg-black
背景强调色: bg-[#ff6b6b], bg-[#feca57], bg-[#48dbfb], bg-[#ff9ff3]
正文主色: text-black
正文辅色: text-white
正文弱化色: text-gray-600
按钮主色: bg-[#ff6b6b] text-black
按钮辅色: bg-[#feca57] text-black
```
---
## [FORBIDDEN] 绝对禁止
以下 class 在本风格中**绝对禁止使用**,生成时必须检查并避免:
### 禁止的 Class
- `border`
- `border-[0.5px]`
- `border-gray-200`
- `border-gray-300`
- `border-slate-200`
- `bg-gray-50`
- `bg-gray-100`
- `bg-slate-50`
- `text-gray-400`
- `text-gray-500`
- `shadow-sm`
- `shadow`
- `shadow-md`
- `opacity-50`
- `opacity-60`
### 禁止的模式
- 匹配 `^border-(?:gray|slate)-`
- 匹配 `^shadow-(?!\[|none)`
- 匹配 `^bg-(?:gray|slate)-(?:[1-3])`
- 匹配 `^text-(?:gray|slate)-(?:[3-5])`
### 禁止原因
- `border-gray-200`: Memphis uses thick black borders (border-4 border-black), not subtle grays
- `shadow-md`: Memphis uses hard-edge offset shadows, not blurred shadows
- `bg-gray-50`: Memphis uses bold vivid colors (coral, yellow, teal), not muted grays
- `text-gray-400`: Memphis uses high-contrast text, not subtle muted text
> WARNING: 如果你的代码中包含以上任何 class,必须立即替换。
---
## [REQUIRED] 必须包含
### 按钮必须包含
```
border-4
border-black
shadow-[5px_5px_0px_0px_rgba(0,0,0,1)]
hover:translate-x-[3px] hover:translate-y-[3px]
hover:shadow-[2px_2px_0px_0px_rgba(0,0,0,1)]
transition-all duration-200
font-black
```
### 卡片必须包含
```
border-4
border-black
shadow-[5px_5px_0px_0px_rgba(0,0,0,1)]
bg-[#fef9ef]
```
### 输入框必须包含
```
border-4
border-black
font-sans
focus:shadow-[5px_5px_0px_0px_rgba(0,0,0,1)]
focus:outline-none
```
---
## [COMPARE] Memphis 错误 vs 正确对比
以下错误示例只代表“未经过当前风格适配的通用默认值”,不要把错误示例当成视觉建议。
### 按钮
[WRONG] **错误示例**(通用组件库默认样式,不要直接复制):
```html
<button class="{GENERIC_LIBRARY_BUTTON_DEFAULT}">
点击我
</button>
```
[CORRECT] **正确示例**(使用当前风格的 token):
```html
<button class="border-4 border-black shadow-[5px_5px_0px_0px_rgba(0,0,0,1)] hover:translate-x-[3px] hover:translate-y-[3px] hover:shadow-[2px_2px_0px_0px_rgba(0,0,0,1)] transition-all duration-200 font-black bg-[#ff6b6b] text-black">
点击我
</button>
```
### 卡片
[WRONG] **错误示例**(未经当前风格适配的通用卡片):
```html
<div class="{GENERIC_LIBRARY_CARD_DEFAULT}">
<h3>{TITLE}</h3>
</div>
```
[CORRECT] **正确示例**(使用当前风格的 card token):
```html
<div class="border-4 border-black shadow-[5px_5px_0px_0px_rgba(0,0,0,1)] bg-[#fef9ef] p-5 md:p-8">
<h3 class="font-black tracking-tight text-xl md:text-2xl">{TITLE}</h3>
</div>
```
### 输入框
[WRONG] **错误示例**(未经当前风格适配的通用输入框):
```html
<input class="{GENERIC_LIBRARY_INPUT_DEFAULT}" />
```
[CORRECT] **正确示例**(使用当前风格的 input token):
```html
<input class="border-4 border-black font-sans focus:shadow-[5px_5px_0px_0px_rgba(0,0,0,1)] focus:outline-none" placeholder="{PLACEHOLDER}" />
```
---
## [TEMPLATES] Memphis 页面骨架模板
以下骨架只使用当前风格的 token。替换 `{PLACEHOLDER}` 时,不要移除或替换这些 token:
### 导航栏骨架
```html
<nav class="bg-[#fef9ef] text-black border-4 border-black px-4 md:px-8 lg:px-16">
<div class="flex items-center justify-between max-w-6xl mx-auto gap-4 md:gap-6">
<a href="/" class="font-black tracking-tight text-xl md:text-2xl">
{LOGO_TEXT}
</a>
<div class="flex gap-4 md:gap-6 font-sans text-xs md:text-sm">
{NAV_LINKS}
</div>
</div>
</nav>
```
### Hero 区块骨架
```html
<section class="bg-[#ff6b6b] text-black py-12 md:py-24 lg:py-32 px-4 md:px-8 lg:px-16">
<div class="max-w-4xl mx-auto">
<h1 class="font-black tracking-tight text-5xl md:text-7xl lg:text-9xl">
{HEADLINE}
</h1>
<p class="font-sans text-sm md:text-base max-w-xl">
{SUBHEADLINE}
</p>
<button class="border-4 border-black shadow-[5px_5px_0px_0px_rgba(0,0,0,1)] hover:translate-x-[3px] hover:translate-y-[3px] hover:shadow-[2px_2px_0px_0px_rgba(0,0,0,1)] transition-all duration-200 font-black bg-[#ff6b6b] text-black">
{CTA_TEXT}
</button>
</div>
</section>
```
### 卡片网格骨架
```html
<section class="bg-[#fef9ef] text-black py-12 md:py-24 lg:py-32 px-4 md:px-8 lg:px-16">
<div class="max-w-6xl mx-auto">
<h2 class="font-black tracking-tight text-3xl md:text-4xl">{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="border-4 border-black shadow-[5px_5px_0px_0px_rgba(0,0,0,1)] bg-[#fef9ef] p-5 md:p-8">
<h3 class="font-black tracking-tight text-xl md:text-2xl">{CARD_TITLE}</h3>
<p class="font-sans text-sm md:text-base text-gray-600">{CARD_DESCRIPTION}</p>
</div>
</div>
</div>
</section>
```
### 表单输入骨架
```html
<input class="border-4 border-black font-sans focus:shadow-[5px_5px_0px_0px_rgba(0,0,0,1)] focus:outline-none" placeholder="{PLACEHOLDER}" />
```
### 页脚骨架
```html
<footer class="bg-black text-white py-12 md:py-24 lg:py-32 px-4 md:px-8 lg:px-16">
<div class="max-w-6xl mx-auto">
<div class="grid grid-cols-1 md:grid-cols-3 gap-6 md:gap-10">
<div>
<span class="font-black tracking-tight text-xl md:text-2xl">{LOGO_TEXT}</span>
<p class="font-sans text-xs md:text-sm">{TAGLINE}</p>
</div>
<div>
<h4 class="font-black tracking-tight text-xl md:text-2xl">{COLUMN_TITLE}</h4>
<ul class="font-sans text-xs md:text-sm">
{FOOTER_LINKS}
</ul>
</div>
</div>
</div>
</footer>
```
---
## [CHECKLIST] Memphis 生成后自检清单
**输出代码前,逐项验证当前风格的 token 和规则。如有违反,先修正再交付:**
### Token 检查
- [ ] 按钮包含: `border-4 border-black shadow-[5px_5px_0px_0px_rgba(0,0,0,1)] hover:translate-x-[3px] hover:translate-y-[3px] hover:shadow-[2px_2px_0px_0px_rgba(0,0,0,1)] transition-all duration-200 font-black`
- [ ] 卡片包含: `border-4 border-black shadow-[5px_5px_0px_0px_rgba(0,0,0,1)] bg-[#fef9ef]`
- [ ] 输入框包含: `border-4 border-black font-sans focus:shadow-[5px_5px_0px_0px_rgba(0,0,0,1)] focus:outline-none`
### 禁止项检查
- [ ] 没有使用 `border`
- [ ] 没有使用 `border-[0.5px]`
- [ ] 没有使用 `border-gray-200`
- [ ] 没有使用 `border-gray-300`
- [ ] 没有使用 `border-slate-200`
- [ ] 没有使用 `bg-gray-50`
- [ ] 没有使用 `bg-gray-100`
- [ ] 没有使用 `bg-slate-50`
### 风格规则检查
- [ ] 使用鲜艳的撞色组合
- [ ] 添加几何图形装饰(圆、三角、波浪)
- [ ] 使用粗边框 border-4
- [ ] 不规则的布局和形状
- [ ] 添加点状、条纹、波浪图案
### 风格漂移检查
- [ ] 没有违反:禁止使用单调的配色
- [ ] 没有违反:禁止过于对称规整的布局
- [ ] 没有违反:禁止使用细边框
- [ ] 没有违反:禁止省略几何装饰元素
- [ ] 没有违反:禁止几何装饰在 hover 时保持静止(失去孟菲斯游乐场的灵魂)
### 通用交付检查
- [ ] 响应式布局在手机、平板和桌面下稳定,没有横向溢出
- [ ] 所有交互元素有清晰焦点、可访问名称和 reduced-motion 方案
- [ ] 文本对比度达到 WCAG AA,且没有用颜色单独传递状态
- [ ] 结果仍然能够一眼识别为 Memphis
---
## [EXAMPLES] 示例 Prompt
### 1. 创意工作室官网
大胆有趣的创意网站
```
用 Memphis 风格创建一个创意工作室官网,要求:
1. 背景:多彩渐变 + 几何装饰
2. 标题:粗体 + 多层阴影
3. 卡片:粗边框 + 硬阴影
4. 按钮:鲜艳撞色
5. 添加圆形、三角形装饰
```
### 2. SaaS 着陆页
生成 孟菲斯风格风格的 SaaS 产品着陆页
```
Create a SaaS landing page using Memphis style with hero section, feature grid, testimonials, pricing table, and footer.
```
### 3. 作品集展示
生成 孟菲斯风格风格的作品集页面
```
Create a portfolio showcase page using Memphis style with project grid, about section, contact form, and consistent visual language.
```
## 绝对禁止(匹配即拒绝)
以下模式一旦出现,视为风格违规——不找借口,直接重写。
- 使用单调的配色
- 过于对称规整的布局
- 使用细边框
- 省略几何装饰元素
- 几何装饰在 hover 时保持静止(失去孟菲斯游乐场的灵魂)
- 按钮 hover 使用位移减小阴影(应是增大阴影 + 换色,而非向阴影方向移动)
## 自检清单(交付前逐条确认)
如果任何一条不通过,说明风格漂移了——修改后再交付。
- [ ] 没有紫色到蓝色的渐变
- [ ] 没有使用 Inter / Roboto / Geist 等过度使用的字体
- [ ] 没有嵌套卡片(卡片里面套卡片)
- [ ] 没有在彩色背景上放灰色文字
- [ ] 正文对比度满足 WCAG AA(≥4.5:1)
- [ ] 没有 bounce / elastic 缓动曲线
- [ ] 动效有 prefers-reduced-motion 备选方案
- [ ] 正文行宽不超过 65-75 个字符
- [ ] 没有单侧粗边框装饰(border-left/right accent stripe)
- [ ] 没有渐变文字(background-clip: text)
- [ ] 没有把玻璃态(glassmorphism)当作默认风格
- [ ] 没有 tiny uppercase tracked eyebrow 放在每个 section 标题上面
- [ ] 禁止使用单调的配色
- [ ] 禁止过于对称规整的布局
- [ ] 禁止使用细边框
- [ ] 禁止省略几何装饰元素
- [ ] 禁止几何装饰在 hover 时保持静止(失去孟菲斯游乐场的灵魂)更多提示词库:全部 UI 提示词 · Tailwind UI 提示词 · 暗色模式提示词
组件模板
孟菲斯风格按钮,波普换色 + 玩具按键触感
真实前端完成度
这层检查这个风格是否已经具备真实网站常见的主题、状态反馈、键盘可访问性和性能约束。
总体覆盖
51%
Fallback 规则
暗色模式
0%
缺失组件状态
79%
部分动效规则
70%
部分可访问性
70%
部分性能代价
35%
通用按钮
默认 / 悬停 / 键盘焦点 / 按下 / 禁用
输入框
默认 / 悬停 / 键盘焦点 / 禁用 / 错误
卡片
默认 / 悬停 / 键盘焦点 / 加载中 / 骨架屏
表单
默认 / 键盘焦点 / 禁用 / 加载中 / 错误
常见问题
/* Memphis 全局样式 */
:root {
--memphis-red: #ff6b6b;
--memphis-yellow: #feca57;
--memphis-cyan: #48dbfb;
--memphis-pink: #ff9ff3;
--memphis-green: #1dd1a1;
--memphis-purple: #5f27cd;
}
/* 孟菲斯阴影 */
.memphis-shadow {
box-shadow: 6px 6px 0px #000;
}
/* 波浪线背景 */
.memphis-waves {
background-image: url("data:image/svg+xml,%3Csvg width='100' height='20' viewBox='0 0 100 20' xmlns='http://www.w3.org/2000/svg'%3E%3Cpath d='M0 10 Q25 0 50 10 T100 10' stroke='%23000' stroke-width='2' fill='none'/%3E%3C/svg%3E");
background-repeat: repeat-x;
}
/* 点状图案 */
.memphis-dots {
background-image: radial-gradient(#000 2px, transparent 2px);
background-size: 20px 20px;
}
/* 条纹图案 */
.memphis-stripes {
background-image: repeating-linear-gradient(
45deg,
transparent,
transparent 10px,
#000 10px,
#000 12px
);
}
@keyframes memphis-fade-in {
from { opacity: 0; transform: translateY(8px); }
to { opacity: 1; transform: translateY(0); }
}
@keyframes memphis-pulse {
0%, 100% { opacity: 1; }
50% { opacity: 0.7; }
}
.memphis-card {
position: relative;
overflow: hidden;
}
.memphis-card::before {
content: "";
position: absolute;
inset: 0;
opacity: 0;
transition: opacity 0.3s ease;
background: linear-gradient(135deg, rgba(255, 107, 107, 0.05), transparent);
pointer-events: none;
}
.memphis-card:hover::before {
opacity: 1;
}
.memphis-frosted {
backdrop-filter: blur(12px) saturate(180%);
-webkit-backdrop-filter: blur(12px) saturate(180%);
background: rgba(255, 107, 107, 0.08);
}
.memphis-accent-corner {
clip-path: polygon(0 0, 100% 0, 100% calc(100% - 2rem), calc(100% - 2rem) 100%, 0 100%);
}
.memphis-animate-in {
animation: memphis-fade-in 0.5s ease-out both;
}相关风格
探索这些风格获取现成的 tokens 和组件。
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 的技能包
Memphis(孟菲斯)是1980年代由意大利设计师 Ettore Sottsass 创立的设计运动,以打破传统、拥抱混乱和趣味性著称。
基于颜色对比度和排版可读性的 WCAG 2.1 合规分析。
综合评分
等级: C - 一般
对比度
| 场景 | 颜色 | 比率 | AA | AAA |
|---|---|---|---|---|
| Text on background | /#000000 / #fef9ef | 20.01:1 | ||
| Secondary text on background | /#ffffff / #fef9ef | 1.05:1 | ||
| Muted text on background | /#4b5563 / #fef9ef | 7.2:1 | ||
| Text on secondary background | /#000000 / #000000 | 1:1 | ||
| Secondary text on secondary | /#ffffff / #000000 | 21:1 | ||
| Button primary | /#000000 / #ff6b6b | 7.57:1 | ||
| Text on accent 1 | /#000000 / #ff6b6b | 7.57:1 | ||
| Alt text on accent 1 | /#ffffff / #ff6b6b | 2.78:1 | ||
| Text on accent 2 | /#000000 / #feca57 | 13.8:1 | ||
| Alt text on accent 2 | /#ffffff / #feca57 | 1.52:1 | ||
| Text on accent 3 | /#000000 / #48dbfb | 12.8:1 | ||
| Alt text on accent 3 | /#ffffff / #48dbfb | 1.64:1 | ||
| Text on accent 4 | /#000000 / #ff9ff3 | 11.51:1 | ||
| Alt text on accent 4 | /#ffffff / #ff9ff3 | 1.83:1 |
可读性
分数
90/100
字号
text-sm md:text-base
字重
font-black tracking-tight
行高
default
评分基于 WCAG 2.1 标准。AA 级要求普通文本对比度 4.5:1、大文本 3:1;AAA 级要求普通文本 7:1、大文本 4.5:1。