Tailwind CSS v3 → v4로 올렸습니다. npm run dev는 잘 되는데 npm run build 후 npm run start로 띄우면 스타일이 절반 정도만 적용됩니다.
Next.js 16 + Tailwind v4 + 자체 디자인 시스템 패키지(@scope/ui) 사용 중입니다.
Tailwind CSS v3 → v4로 올렸습니다. npm run dev는 잘 되는데 npm run build 후 npm run start로 띄우면 스타일이 절반 정도만 적용됩니다.
Next.js 16 + Tailwind v4 + 자체 디자인 시스템 패키지(@scope/ui) 사용 중입니다.
댓글 4
거의 확실히 workspace 패키지의 클래스가 content scan에서 빠진 문제입니다. Tailwind v4는 v3와 content 설정 방식이 다릅니다.
v4의 새 방식
v3의
tailwind.config.js의content배열이 v4에서는 CSS 안의@source로 이동했습니다. 자동 감지는 현재 디렉터리만 됩니다.왜 dev에서는 동작했나
dev 모드에서는 JIT가 모든 클래스를 그때그때 생성하지만, production은 사용된 클래스만 추출하기 때문에 스캔되지 않은 파일의 클래스는 빠집니다.
점검 명령
저도 같은 문제 겪었는데 한 가지 더 — 만약
cva나tailwind-variants같은 라이브러리에서 동적 문자열 조립으로 클래스를 만들고 있다면 그것도 못 찾습니다.이런 케이스가 의심되면 safelist 사용:
v4에서는 inline source가 추가됐어요.
네, 가능합니다.
tailwind.css같은 파일을 따로 두고 globals.css에서 import 하는 패턴이 깔끔해요.한 가지 주의 —
@source는 import한 파일 기준으로 상대 경로가 잡히므로, 이전한 파일에서 다시 계산해야 합니다.