HomeStylesTemplates
StyleKit
StylesAnimationsTemplates
BlogChangelog
  1. Home
  2. /Styles
  3. /Neumorphism
Style Catalog/新拟物派

新拟物派

Neumorphism

D
52/100Poor

Soft concave and convex 3D effects using dual shadows to simulate light sources. Light backgrounds with same-tone elements create a refined sense of depth.

立体感双重阴影柔和浅色系内凹外凸moderncontemporarysleek现代简洁
View Full ShowcaseTemplates

Best For

立体感 / 双重阴影 / 柔和

Primary Move

Use light backgrounds bg-[#e0e5ec] or bg-[#f0f0f3]

Watch Out

Do not use pure black or pure white backgrounds

Showcase Entry

Live preview of the showcase page. Click to explore the full experience.

View Full Showcase

Color Palette

Primary

#e0e5ec

Secondary

#d1d9e6

Accent 1

#6d5dfc

Accent 2

#ff6b6b

Accent 3

#4ecdc4

Accent 4

#ffe66d

PromptsComponent PreviewExportsRatings & Feedback

Prompts

Hard + Soft Prompts

Use one-click prompts to generate 新拟物派 style UIs. Hard mode enforces strict constraints; soft mode keeps overall style direction while allowing flexibility.

Hard Prompt

Strict constraints for high style consistency

STYLEKIT_STYLE_REFERENCE
style_name: 新拟物派
style_slug: neumorphism
style_source: /styles/neumorphism

# Hard Prompt

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

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

## Style Rules
# Neumorphism (新拟物派) Design System

> 柔和的内凹外凸立体效果,通过双重阴影模拟光源,浅色背景配同色系元素,营造精致的立体感。

## 核心理念

Neumorphism(新拟物派)是一种介于扁平设计和拟物设计之间的风格,通过柔和的阴影创造出元素从背景中"挤压"或"凹陷"的视觉效果。

核心理念:
- 柔和立体:通过双重阴影(亮/暗)模拟自然光源
- 同色系统一:元素与背景使用相同或相近的颜色
- 触感直觉:凸起表示可交互,凹陷表示已激活或输入区
- 克制装饰:避免过多颜色和对比,保持整体柔和感

设计原则:
- 视觉一致性:所有组件必须遵循统一的视觉语言,从色彩到字体到间距保持谐调
- 层次分明:通过颜色深浅、字号大小、留白空间建立清晰的信息层级
- 交互反馈:每个可交互元素都必须有明确的 hover、active、focus 状态反馈
- 响应式适配:设计必须在移动端、平板、桌面端上保持一致的体验
- 无障碍性:确保色彩对比度符合 WCAG 2.1 AA 标准,所有交互元素可键盘访问

---

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

### 边框
```
宽度: border-0
颜色: border-transparent
圆角: rounded-xl
```

### 阴影
```
小:   shadow-[4px_4px_8px_#b8bcc2,-4px_-4px_8px_#ffffff]
中:   shadow-[6px_6px_12px_#b8bcc2,-6px_-6px_12px_#ffffff] md:shadow-[8px_8px_16px_#b8bcc2,-8px_-8px_16px_#ffffff]
大:   shadow-[8px_8px_16px_#b8bcc2,-8px_-8px_16px_#ffffff] md:shadow-[12px_12px_24px_#b8bcc2,-12px_-12px_24px_#ffffff]
悬停: hover:shadow-[4px_4px_8px_#b8bcc2,-4px_-4px_8px_#ffffff]
聚焦: focus:shadow-[6px_6px_12px_#b8bcc2,-6px_-6px_12px_#ffffff]
```

### 交互效果
```
悬停位移: undefined
过渡动画: transition-all duration-200
按下状态: active:shadow-[inset_4px_4px_8px_#b8bcc2,inset_-4px_-4px_8px_#ffffff]
```

### 字体
```
标题: font-semibold text-gray-800
正文: text-gray-600
```

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

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

---

## [FORBIDDEN] 绝对禁止

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

### 禁止的 Class
- `rounded-none`
- `rounded-sm`
- `shadow-sm`
- `shadow`
- `shadow-md`
- `shadow-lg`
- `shadow-xl`
- `shadow-2xl`
- `bg-black`
- `bg-white`
- `bg-gray-900`
- `bg-gray-950`
- `border-2`
- `border-4`
- `border-8`
- `border`
- `bg-gradient-to-r`
- `bg-gradient-to-l`
- `bg-gradient-to-t`
- `bg-gradient-to-b`

### 禁止的模式
- 匹配 `^rounded-none`
- 匹配 `^shadow-(?!\[|none)`
- 匹配 `^bg-gradient-`
- 匹配 `^border-[248]`
- 匹配 `^bg-black`
- 匹配 `^bg-white$`

### 禁止原因
- `rounded-none`: Neumorphism requires rounded corners (rounded-xl or rounded-2xl)
- `shadow-lg`: Neumorphism uses dual-shadow system, not standard shadows
- `bg-white`: Neumorphism uses light gray backgrounds (#e0e5ec), not pure white
- `bg-black`: Neumorphism uses light gray backgrounds, not black
- `border-2`: Neumorphism avoids visible borders, shadows create separation
- `bg-gradient-to-r`: Neumorphism uses solid colors, no gradients

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

---

## [REQUIRED] 必须包含

### 按钮必须包含
```
bg-[#e0e5ec]
rounded-xl
shadow-[6px_6px_12px_#b8bcc2,-6px_-6px_12px_#ffffff]
hover:shadow-[4px_4px_8px_#b8bcc2,-4px_-4px_8px_#ffffff]
active:shadow-[inset_4px_4px_8px_#b8bcc2,inset_-4px_-4px_8px_#ffffff]
transition-all duration-200
```

### 卡片必须包含
```
bg-[#e0e5ec]
rounded-2xl
shadow-[8px_8px_16px_#b8bcc2,-8px_-8px_16px_#ffffff]
```

### 输入框必须包含
```
bg-[#e0e5ec]
rounded-xl
shadow-[inset_4px_4px_8px_#b8bcc2,inset_-4px_-4px_8px_#ffffff]
focus:shadow-[inset_6px_6px_12px_#b8bcc2,inset_-6px_-6px_12px_#ffffff]
focus:outline-none
placeholder:text-gray-400
transition-shadow duration-200
```

---

## [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="bg-[#e0e5ec] rounded-xl shadow-[6px_6px_12px_#b8bcc2,-6px_-6px_12px_#ffffff] hover:shadow-[4px_4px_8px_#b8bcc2,-4px_-4px_8px_#ffffff] active:shadow-[inset_4px_4px_8px_#b8bcc2,inset_-4px_-4px_8px_#ffffff] transition-all duration-200 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-[#e0e5ec] rounded-2xl shadow-[8px_8px_16px_#b8bcc2,-8px_-8px_16px_#ffffff] p-6 md:p-8">
  <h3 class="font-semibold text-gray-800 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-[#e0e5ec] rounded-xl shadow-[inset_4px_4px_8px_#b8bcc2,inset_-4px_-4px_8px_#ffffff] focus:shadow-[inset_6px_6px_12px_#b8bcc2,inset_-6px_-6px_12px_#ffffff] focus:outline-none placeholder:text-gray-400 transition-shadow duration-200 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. 智能家居控制面板

设备控制和状态展示

```
用 Neumorphism 风格设计一个智能家居控制面板,要求:
1. 背景:统一浅灰色 #e0e5ec
2. 设备卡片:凸起效果,显示设备图标和状态
3. 开关按钮:圆形,开启时凹陷 + 强调色图标
4. 温度滑块:凹槽轨道,凸起滑块
5. 场景按钮:按下时从凸起变凹陷
所有阴影使用双色:右下深色 + 左上亮色
```

### 2. 计算器应用

拟物风格计算器界面

```
用 Neumorphism 风格创建一个计算器界面,要求:
1. 外框:大圆角凸起容器
2. 显示屏:凹陷区域,深色背景,显示数字
3. 数字按钮:4x3 网格,凸起效果
4. 运算符:右侧一列,用强调色
5. 按下效果:从凸起变凹陷
背景色 #e0e5ec,阴影用 #a3b1c6 和 #ffffff
```

### 3. 音频控制器

音量和均衡器控制

```
用 Neumorphism 风格设计一个音频控制器,要求:
1. 主容器:大圆角凸起面板
2. 旋钮:圆形凸起,带刻度指示
3. 推子/滑块:垂直凹槽,凸起滑块
4. 均衡器:多个垂直滑块并排
5. 按钮:静音/预设等,按下时凹陷
保持统一的浅灰色调,通过阴影创造立体感
```

Soft Prompt

Flexible constraints for quick ideation

STYLEKIT_STYLE_REFERENCE
style_name: 新拟物派
style_slug: neumorphism
style_source: /styles/neumorphism

# Soft Prompt

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

## Style Signals
- 立体感
- 双重阴影
- 柔和
- 浅色系
- 内凹外凸
- modern

## Prefer
- 使用浅色背景 bg-[#e0e5ec] 或 bg-[#f0f0f3]
- 使用双重阴影 shadow-[8px_8px_16px_#b8bcc2,-8px_-8px_16px_#ffffff]
- 凹陷效果使用 inset 阴影 shadow-[inset_8px_8px_16px_#b8bcc2,inset_-8px_-8px_16px_#ffffff]
- 使用中等圆角 rounded-xl (12-24px)

## Avoid
- 禁止使用纯黑或纯白背景
- 禁止使用高对比度配色
- 禁止使用粗边框 border-2 及以上

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

Component Templates

Component Preview

按钮

Neumorphism 风格按钮,Hover Shadowing 缩小阴影 + Extrude to Intrude 转为内凹

Global Styles

Global CSS

css
/* Neumorphism 全局样式 */

/* 背景色 */
:root {
  --neu-bg: #e0e5ec;
  --neu-bg-light: #f0f0f3;
  --neu-shadow-dark: #b8bcc2;
  --neu-shadow-light: #ffffff;
  --neu-accent: #6d5dfc;
  --neu-text: #333333;
  --neu-text-muted: #6b7280;
}

/* 凸起效果 */
.neu-raised {
  background: var(--neu-bg);
  border-radius: 12px;
  box-shadow:
    8px 8px 16px var(--neu-shadow-dark),
    -8px -8px 16px var(--neu-shadow-light);
}

.neu-raised-sm {
  box-shadow:
    4px 4px 8px var(--neu-shadow-dark),
    -4px -4px 8px var(--neu-shadow-light);
}

/* 凹陷效果 */
.neu-pressed {
  background: var(--neu-bg);
  border-radius: 12px;
  box-shadow:
    inset 8px 8px 16px var(--neu-shadow-dark),
    inset -8px -8px 16px var(--neu-shadow-light);
}

.neu-pressed-sm {
  box-shadow:
    inset 4px 4px 8px var(--neu-shadow-dark),
    inset -4px -4px 8px var(--neu-shadow-light);
}

/* 悬停效果 */
.neu-hover:hover {
  box-shadow:
    4px 4px 8px var(--neu-shadow-dark),
    -4px -4px 8px var(--neu-shadow-light);
}

/* 激活效果 */
.neu-active:active {
  box-shadow:
    inset 4px 4px 8px var(--neu-shadow-dark),
    inset -4px -4px 8px var(--neu-shadow-light);
}

/* 圆形元素 */
.neu-circle {
  border-radius: 50%;
}
@keyframes neumorphism-fade-in {
  from { opacity: 0; transform: translateY(8px); }
  to { opacity: 1; transform: translateY(0); }
}

@keyframes neumorphism-pulse {
  0%, 100% { opacity: 1; }
  50% { opacity: 0.7; }
}

.neumorphism-card {
  position: relative;
  overflow: hidden;
}

.neumorphism-card::before {
  content: "";
  position: absolute;
  inset: 0;
  opacity: 0;
  transition: opacity 0.3s ease;
  background: linear-gradient(135deg, rgba(224, 229, 236, 0.05), transparent);
  pointer-events: none;
}

.neumorphism-card:hover::before {
  opacity: 1;
}

.neumorphism-gradient {
  background: linear-gradient(135deg, #e0e5ec, #6d5dfc);
}

.neumorphism-gradient-text {
  background: linear-gradient(135deg, #e0e5ec, #6d5dfc);
  -webkit-background-clip: text;
  -webkit-text-fill-color: transparent;
  background-clip: text;
}

.neumorphism-frosted {
  backdrop-filter: blur(12px) saturate(180%);
  -webkit-backdrop-filter: blur(12px) saturate(180%);
  background: rgba(224, 229, 236, 0.08);
}

.neumorphism-accent-corner {
  clip-path: polygon(0 0, 100% 0, 100% calc(100% - 2rem), calc(100% - 2rem) 100%, 0 100%);
}

.neumorphism-animate-in {
  animation: neumorphism-fade-in 0.5s ease-out both;
}

Compatible Layout Modes

Recommended Layouts

The following layout modes pair well with 新拟物派 style.

便当盒布局

Bento Grid

卡片堆叠布局

Card Stack

固定侧边栏布局

Fixed Sidebar

IDE Integration

IDE Config Export

Download config files for your AI coding assistant to generate code following this style.

Style Pack

Export 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

Design Philosophy

Neumorphism is a style between flat design and skeuomorphism, creating the visual effect of elements being "extruded" or "recessed" from the background through soft shadows.

Accessibility

Accessibility Score

WCAG 2.1 compliance analysis based on color contrast ratios and typography readability.

52

Overall Score

Grade: D - Poor

Contrast Ratios

Score: 39/100Avg Ratio: 4.19:1
AA FailAAA Fail
ContextColorsRatioAAAAA
Secondary text on background
/#4b5563 / #e0e5ec
5.97:1
Muted text on background
/#9ca3af / #e0e5ec
2.01:1
Secondary text on secondary
/#4b5563 / #f0f0f3
6.64:1
Button primary
/#ffffff / #6d5dfc
4.54:1
Alt text on accent 1
/#4b5563 / #6d5dfc
1.66:1
Alt text on accent 2
/#4b5563 / #ff6b6b
2.72:1
Alt text on accent 3
/#4b5563 / #4ecdc4
3.91:1
Alt text on accent 4
/#4b5563 / #ffe66d
6.04:1

Readability

Score

82/100

Font Size

text-sm md:text-base

Font Weight

font-semibold text-gray-800

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

Prompt examples, FAQ, and extended use cases

This section is better for readers who already like the direction and want more depth.

StyleKit

Curated web design styles collection for more beautiful AI-generated websites.

Navigation

StylesTemplatesGuideBlogChangelog

Resources

UI Design PromptsLanding Page PromptsDashboard PromptsTailwind UI PromptsDark Mode UI PromptsGitHub Repository

Stay Updated

By subscribing, you agree to our Privacy Policy and Terms.


(c) 2026 StyleKit. Open Source.

AboutContactPrivacyTermsBuilt with Editorial style