Co-Pilot / 辅助式
更新于 24 days ago

tailwindcss-v4-skill

Ttlq5l
0.0k
tlq5l/tailwindcss-v4-skill
82
Agent 评分

💡 摘要

该技能为Tailwind CSS v4提供了以CSS为中心的配置和指令,便于从v3迁移。

🎯 适合人群

前端开发者UI/UX设计师Web应用开发者Tailwind CSS爱好者使用CSS框架的软件工程师

🤖 AI 吐槽:看起来很能打,但别让配置把人劝退。

安全分析中风险

风险:Medium。建议检查:是否发起外网请求(SSRF/数据外发)。以最小权限运行,并在生产环境启用前审计代码与依赖。


name: tailwindcss-v4 description: "Tailwind CSS v4 patterns: CSS-first config, @theme/@utility/@variant directives, migration from v3. Use when working with Tailwind v4 projects." proactive: match match:

  • "tailwind"
  • "tailwindcss"
  • "@theme"
  • "@utility"
  • "@variant"

Tailwind CSS v4 Skill

CSS-first configuration, new directives, migration from v3.

Quick Reference

v4 Entry Point

@import "tailwindcss";

NOT the v3 way:

/* ❌ These cause errors in v4 */ @tailwind base; @tailwind components; @tailwind utilities;

Key Directives

| Directive | Purpose | |-----------|---------| | @theme | Define design tokens (colors, spacing, fonts) | | @utility | Create custom utility classes | | @variant | Define custom variants (hover, focus, etc.) | | @source | Control class detection and safelisting | | @reference | Import for @apply without emitting CSS |

Theme Configuration (CSS-first)

@import "tailwindcss"; @theme { --color-primary: #3b82f6; --color-secondary: #64748b; --font-display: "Inter", sans-serif; --spacing-18: 4.5rem; }

NOT tailwind.config.js:

// ❌ v3 pattern - don't use in v4 module.exports = { theme: { extend: { colors: { primary: '#3b82f6' } } } }

Custom Utilities

@utility content-auto { content-visibility: auto; } /* Functional utility must end in -* */ @utility tab-* { --tab-size: --value(--spacing-*, [integer]); tab-size: var(--tab-size); }

Custom Variants

Use @custom-variant to define new variants (not @variant).

@custom-variant hocus (&:hover, &:focus); /* Dark mode with class strategy */ @custom-variant dark (&:is(.dark *)); /* Body block with @slot */ @custom-variant hocus { &:hover, &:focus { @slot; } }

Theme Configuration

@theme { --color-primary: #3b82f6; /* Clear namespace */ --color-*: initial; }

Theme Flags

  • default: Merge with default theme
  • inline: Emit variables to output
  • static: Use values but don't emit vars
  • reference: Use values but don't emit CSS
@theme inline { --font-sans: "SF Pro Text", system-ui; }

New Gradient Syntax

<!-- v4 preferred - supports interpolation color space --> <div class="bg-linear-to-r/oklch from-blue-500 to-purple-500"></div> <!-- Also: bg-linear-to-b, bg-radial, bg-conic -->

New Variants

  • @min-[400px]: / @max-[600px]: (Container queries)
  • starting: (@starting-style)
  • details-content: (::details-content)
  • inverted-colors:, noscript:, print:

Safelisting Classes

/* Inline safelist */ @source inline("bg-red-500 text-white hidden"); /* From external source */ @source "../content/**/*.md";

Migration from v3

| v3 | v4 | |----|-----| | @tailwind base/components/utilities | @import "tailwindcss" | | tailwind.config.js theme.extend | @theme { --color-* } | | PostCSS tailwindcss plugin | @tailwindcss/postcss | | @apply with config values | @reference import first |

PostCSS Setup

// postcss.config.js export default { plugins: { '@tailwindcss/postcss': {} // NOT 'tailwindcss' } }

Vite Setup

// vite.config.ts import tailwindcss from '@tailwindcss/vite' export default { plugins: [tailwindcss()] }

Sources: Tailwind v4 Docs, GitHub

五维分析
清晰度9/10
创新性7/10
实用性8/10
完整性8/10
可维护性9/10
优缺点分析

优点

  • 清晰的从v3到v4的迁移路径
  • 支持以CSS为中心的配置
  • 提供新的实用程序和变体指令

缺点

  • 可能需要学习新的语法
  • 大型项目的迁移可能复杂
  • 与v3的向后兼容性有限

相关技能

web-perf

A
toolCo-Pilot / 辅助式
88/ 100

“This skill is so thorough it might start charging consulting fees after the audit.”

tldraw

A
toolCode Lib / 代码库
86/ 100

“一个出色的绘图库,不过其许可模式意味着你的杰作将永远带有'Made with tldraw'签名,除非你支付赎金。”

vue-expert

A
toolCo-Pilot / 辅助式
86/ 100

“看起来很能打,但别让配置把人劝退。”

免责声明:本内容来源于 GitHub 开源项目,仅供展示和评分分析使用。

版权归原作者所有 tlq5l.