skills/nweii/agent-stuff/use-tailwind-v4

use-tailwind-v4

SKILL.md

Tailwind CSS v4

v4 Syntax At a Glance

Imports and Setup

/* v4 import (replaces @tailwind directives) */
@import "tailwindcss";

/* Custom utilities (replaces @layer utilities) */
@utility tab-4 {
  tab-size: 4;
}

/* Loading JS config (if still needed) */
@config "../../tailwind.config.js";

CSS Variables for Theme

v4 exposes all theme values as CSS variables. Prefer these over theme():

background-color: var(--color-red-500);
font-family: var(--font-sans);

Quick Reference: v3 → v4 Changes

Renamed Utilities

v3 v4 Notes
shadow-sm shadow-xs Scale shifted
shadow shadow-sm Scale shifted
drop-shadow-sm drop-shadow-xs Scale shifted
drop-shadow drop-shadow-sm Scale shifted
blur-sm blur-xs Scale shifted
blur blur-sm Scale shifted
backdrop-blur-sm backdrop-blur-xs Scale shifted
backdrop-blur backdrop-blur-sm Scale shifted
rounded-sm rounded-xs Scale shifted
rounded rounded-sm Scale shifted
outline-none outline-hidden outline-none now sets outline-style: none
ring ring-3 Default changed from 3px to 1px

Deprecated Utilities (Use Opacity Modifiers)

<!-- v3: opacity utilities -->
<div class="bg-black bg-opacity-50">

<!-- v4: opacity modifiers -->
<div class="bg-black/50">

Also: flex-shrink-*shrink-*, flex-grow-*grow-*, overflow-ellipsistext-ellipsis

Default Changes

What v3 Default v4 Default
Border color gray-200 currentColor
Ring width 3px 1px
Ring color blue-500 currentColor
Button cursor pointer default

Variant Stacking Order

Changed from right-to-left to left-to-right:

<!-- v3 -->
<ul class="first:*:pt-0">

<!-- v4 -->
<ul class="*:first:pt-0">

Variable Syntax in Arbitrary Values

<!-- v3: square brackets -->
<div class="bg-[--brand-color]">

<!-- v4: parentheses -->
<div class="bg-(--brand-color)">

Prefix Syntax

<!-- v4 prefixes are at the start, like variants -->
<div class="tw:flex tw:bg-red-500 tw:hover:bg-red-600">

Upgrading Projects

For project migrations, run the automated upgrade tool:

npx @tailwindcss/upgrade

Requires Node.js 20+. Run in a new branch and review changes.

For complete migration details (PostCSS/Vite/CLI config, custom utilities, framework-specific issues), see references/upgrade-guide.md.

Weekly Installs
3
Installed on
windsurf2
trae2
opencode2
codex2
claude-code2
antigravity2