Best For
Notion / 文档 / 极简
Notion Style
A minimalist and clean document tool style emphasizing content readability and functionality, using subtle borders, gentle hover effects, and clear typographic hierarchy.
Best For
Notion / 文档 / 极简
Primary Move
Use Notion's signature beige background #f7f6f3
Watch Out
Do NOT use large border radii rounded-2xl or larger
Showcase Entry
Live preview of the showcase page. Click to explore the full experience.
Color Palette
Primary
#37352f
Secondary
#ffffff
Accent 1
#2eaadc
Accent 2
#eb5757
Prompts
Use one-click prompts to generate Notion 风格 style UIs. Hard mode enforces strict constraints; soft mode keeps overall style direction while allowing flexibility.
Strict constraints for high style consistency
STYLEKIT_STYLE_REFERENCE
style_name: Notion 风格
style_slug: notion-style
style_source: /styles/notion-style
# Hard Prompt
请严格遵守以下风格规则并保持一致性,禁止风格漂移。
## 执行要求
- 优先保证风格一致性,其次再做创意延展。
- 遇到冲突时以禁止项为最高优先级。
- 输出前自检:颜色、排版、间距、交互是否仍属于该风格。
## Style Rules
# Notion Style (Notion 风格) Design System
> 极简清爽的文档工具风格,强调内容可读性和功能性,使用微妙的边框、柔和的悬停效果和清晰的文字层级。
## 核心理念
Notion Style 是一种源于 Notion 应用的极简设计风格,强调内容的可读性和功能的直观性。通过微妙的视觉元素和清晰的层级结构,让用户专注于内容本身。
核心理念:
- 内容优先:设计服务于内容,不喧宾夺主
- 功能清晰:每个元素都有明确的功能目的
- 微妙交互:悬停和点击反馈轻柔自然
- 层级分明:通过字体大小和颜色区分信息层级
设计原则:
- 视觉一致性:所有组件必须遵循统一的视觉语言,从色彩到字体到间距保持谐调
- 层次分明:通过颜色深浅、字号大小、留白空间建立清晰的信息层级
- 交互反馈:每个可交互元素都必须有明确的 hover、active、focus 状态反馈
- 响应式适配:设计必须在移动端、平板、桌面端上保持一致的体验
- 无障碍性:确保色彩对比度符合 WCAG 2.1 AA 标准,所有交互元素可键盘访问
---
## Token 字典(精确 Class 映射)
### 边框
```
宽度: border
颜色: border-gray-200
圆角: rounded-md
```
### 阴影
```
小: shadow-sm
中: shadow-md
大: shadow-lg
悬停: hover:shadow-md
聚焦: focus:shadow-sm
```
### 交互效果
```
悬停位移: undefined
过渡动画: transition-colors duration-150
按下状态: active:scale-95
```
### 字体
```
标题: font-semibold text-gray-900
正文: text-gray-700
```
### 字号
```
Hero: text-4xl md:text-5xl
H1: text-3xl md:text-4xl
H2: text-2xl md:text-3xl
H3: text-xl md:text-2xl
正文: text-base
小字: text-sm
```
### 间距
```
Section: py-12 md:py-16
容器: px-4 md:px-6
卡片: p-4 md:p-6
```
---
## [FORBIDDEN] 绝对禁止
以下 class 在本风格中**绝对禁止使用**,生成时必须检查并避免:
### 禁止的 Class
- `rounded-2xl`
- `rounded-3xl`
- `rounded-full`
- `shadow-2xl`
- `bg-gradient-to-r`
- `bg-gradient-to-br`
### 禁止的模式
- 匹配 `^rounded-(?:2xl|3xl|full)`
- 匹配 `^shadow-(?:2xl|inner)`
- 匹配 `^bg-gradient`
### 禁止原因
- `rounded-2xl`: Notion style uses subtle rounded corners (rounded-md or rounded-lg)
- `rounded-full`: Notion style avoids pill-shaped elements except for avatars
- `shadow-2xl`: Notion style uses minimal, subtle shadows
- `bg-gradient-to-r`: Notion style uses flat, solid colors without gradients
> WARNING: 如果你的代码中包含以上任何 class,必须立即替换。
---
## [REQUIRED] 必须包含
### 按钮必须包含
```
px-3 py-1.5
rounded-md
text-sm font-medium
hover:bg-gray-100
transition-colors duration-150
```
### 卡片必须包含
```
bg-white
border border-gray-200
rounded-lg
shadow-sm
```
### 输入框必须包含
```
bg-white
border border-gray-200
rounded-md
text-gray-900 placeholder-gray-400
focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent
transition-all
```
---
## [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="px-3 py-1.5 rounded-md text-sm font-medium hover:bg-gray-100 transition-colors duration-150 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="bg-white border border-gray-200 rounded-lg shadow-sm p-4 md:p-6">
<h3 class="font-semibold text-gray-900 text-xl md:text-2xl">标题</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="bg-white border border-gray-200 rounded-md text-gray-900 placeholder-gray-400 focus:outline-none focus:ring-2 focus:ring-blue-500 focus:border-transparent transition-all 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. 文档页面
Notion 风格文档布局
```
用 Notion Style 创建一个文档页面,要求:
1. 左侧:固定侧边栏,米色背景,页面列表
2. 右侧:主内容区,白色背景
3. 标题:大号字体,可编辑感
4. 内容块:段落、列表、代码块
5. 悬停效果:微妙的背景色变化
```
### 2. 任务看板
Notion 风格看板视图
```
用 Notion Style 设计一个任务看板,要求:
1. 多列布局:To Do, In Progress, Done
2. 任务卡片:白色背景,微妙边框,小圆角
3. 拖拽指示:悬停时显示抓取光标
4. 添加按钮:简洁的 + 图标
5. 标签:彩色小标签(蓝、红、绿、黄)
```
### 3. 作品集展示
生成 Notion 风格风格的作品集页面
```
Create a portfolio showcase page using Notion Style style with project grid, about section, contact form, and consistent visual language.
```Flexible constraints for quick ideation
STYLEKIT_STYLE_REFERENCE
style_name: Notion 风格
style_slug: notion-style
style_source: /styles/notion-style
# Soft Prompt
保持整体风格气质即可,允许实现细节灵活调整,但不要偏离核心视觉语言。
## Style Signals
- Notion
- 文档
- 极简
- 清爽
- 工具
- 协作
## Prefer
- 使用 Notion 标志性的米色背景 #f7f6f3
- 使用微妙的边框 border-gray-200
- 悬停效果使用浅灰背景 hover:bg-gray-100
- 保持清晰的文字层级
## Avoid
- 禁止使用大圆角 rounded-2xl 或更大
- 禁止使用渐变背景
- 禁止使用重阴影
## Output Guidance
- 先保证整体风格识别度,再优化细节。
- 避免过度炫技,保持可读性与可维护性。Component Templates
Notion 风格按钮,极度克制的 Block Highlighting + Micro-click 反馈
/* Notion Style 全局样式 */
:root {
--notion-text: #37352f;
--notion-text-gray: #9b9a97;
--notion-bg: #ffffff;
--notion-bg-gray: #f7f6f3;
--notion-blue: #2eaadc;
--notion-red: #eb5757;
--notion-green: #0f7b6c;
--notion-yellow: #dfab01;
--notion-border: rgba(55, 53, 47, 0.09);
}
/* 基础文字样式 */
body {
font-family: ui-sans-serif, -apple-system, BlinkMacSystemFont, "Segoe UI", Helvetica, "Apple Color Emoji", Arial, sans-serif;
color: var(--notion-text);
line-height: 1.5;
}
/* Notion 风格链接 */
.notion-link {
color: var(--notion-text);
text-decoration: underline;
text-decoration-color: rgba(55, 53, 47, 0.4);
text-underline-offset: 2px;
}
.notion-link:hover {
text-decoration-color: var(--notion-text);
}
/* Notion 风格代码块 */
.notion-code {
font-family: SFMono-Regular, Menlo, Consolas, "PT Mono", "Liberation Mono", Courier, monospace;
font-size: 85%;
background: rgba(135, 131, 120, 0.15);
border-radius: 3px;
padding: 0.2em 0.4em;
}
/* Notion 风格分割线 */
.notion-divider {
border: none;
border-top: 1px solid var(--notion-border);
margin: 1rem 0;
}
@keyframes notion-style-fade-in {
from { opacity: 0; transform: translateY(8px); }
to { opacity: 1; transform: translateY(0); }
}
@keyframes notion-style-pulse {
0%, 100% { opacity: 1; }
50% { opacity: 0.7; }
}
.notion-style-card {
position: relative;
overflow: hidden;
}
.notion-style-card::before {
content: "";
position: absolute;
inset: 0;
opacity: 0;
transition: opacity 0.3s ease;
background: linear-gradient(135deg, rgba(55, 53, 47, 0.05), transparent);
pointer-events: none;
}
.notion-style-card:hover::before {
opacity: 1;
}
.notion-style-gradient {
background: linear-gradient(135deg, #37352f, #2eaadc);
}
.notion-style-gradient-text {
background: linear-gradient(135deg, #37352f, #2eaadc);
-webkit-background-clip: text;
-webkit-text-fill-color: transparent;
background-clip: text;
}
.notion-style-frosted {
backdrop-filter: blur(12px) saturate(180%);
-webkit-backdrop-filter: blur(12px) saturate(180%);
background: rgba(55, 53, 47, 0.08);
}
.notion-style-accent-corner {
clip-path: polygon(0 0, 100% 0, 100% calc(100% - 2rem), calc(100% - 2rem) 100%, 0 100%);
}
.notion-style-animate-in {
animation: notion-style-fade-in 0.5s ease-out both;
}Compatible Layout Modes
The following layout modes pair well with Notion 风格 style.
IDE Integration
Download config files for your AI coding assistant to generate code following this style.
Style Pack
Get the complete machine-readable style assets including Design Tokens, Tailwind presets, CSS variables, and shadcn/ui themes.
Metadata
Style metadata including version information
Design Tokens
Compatible with Figma / Style Dictionary / Tokens Studio
Tailwind Preset
Tailwind CSS theme preset, import directly in config
Global CSS
CSS variables and base styles
shadcn Theme
shadcn/ui theme configuration
CSS Variables
Pure CSS variables, works with any project
SKILL.md
Loadable skill pack for Cursor / Claude Code / VS Code
Notion Style is a minimalist design style originating from the Notion app, emphasizing content readability and intuitive functionality. Through subtle visual elements and clear hierarchical structure, it lets users focus on the content itself.
WCAG 2.1 compliance analysis based on color contrast ratios and typography readability.
Overall Score
Grade: C - Fair
Contrast Ratios
| Context | Colors | Ratio | AA | AAA |
|---|---|---|---|---|
| Text on background | /#37352f / #ffffff | 12.26:1 | ||
| Secondary text on background | /#4b5563 / #ffffff | 7.56:1 | ||
| Muted text on background | /#9ca3af / #ffffff | 2.54:1 | ||
| Text on secondary background | /#37352f / #f7f6f3 | 11.35:1 | ||
| Secondary text on secondary | /#4b5563 / #f7f6f3 | 6.99:1 | ||
| Button primary | /#ffffff / #2eaadc | 2.66:1 |
Readability
Score
77/100
Font Size
text-base
Font Weight
font-semibold text-gray-900
Line Height
default
Scores are based on WCAG 2.1 guidelines. AA requires 4.5:1 contrast for normal text and 3:1 for large text. AAA requires 7:1 for normal text and 4.5:1 for large text.
Further Reading
This section is better for readers who already like the direction and want more depth.