Releases: tailwindlabs/tailwindcss
Releases · tailwindlabs/tailwindcss
v4.0.0-beta.8
Fixed
- Ensure
Symbol.dispose
andSymbol.asyncDispose
are polyfilled (#15404)
v3.4.17
v4.0.0-beta.7
Added
- Export
tailwindcss/lib/util/flattenColorPalette
for backward compatibility (#15318) - Improve debug logs to get better insights (#15303)
Fixed
- Fix dependency related warnings when using
@tailwindcss/postcss
on Windows (#15321) - Skip creating a compiler for CSS files that should not be processed (#15340)
- Fix missing
shadow-none
suggestion in IntelliSense (#15342) - Optimize AST before printing for IntelliSense (#15347)
- Generate vendor prefixes for Chrome 111+ (e.g.
-webkit-background-clip: text
) (#15389)
Changed
v4.0.0-beta.6
Fixed
- Ensure
@import "…" reference
never generates utilities (#15307)
v4.0.0-beta.5
Added
- Parallelize parsing of individual source files (#15270)
- Add new
@import "…" reference
option for importing Tailwind CSS configuration details into another CSS entry point without duplicating CSS (#15228) - Improve performance of
@tailwindcss/postcss
by translating between internal data structures and PostCSS nodes directly without additional parsing or stringification (#15297)
Fixed
- Ensure absolute URLs inside imported CSS files are not rebased when using
@tailwindcss/vite
(#15275) - Fix issues with dev servers using Svelte 5 with
@tailwindcss/vite
(#15274) - Support installing
@tailwindcss/vite
in Vite 6 projects (#15274) - Fix resolution of imported CSS files in SSR builds with
@tailwindcss/vite
(#15279) - Ensure other plugins can run after
@tailwindcss/postcss
(#15273) - Rebase URLs inside imported CSS files when using Vite with the
@tailwindcss/postcss
extension (#15273) - Fix missing font family suggestions in IntelliSense (#15288)
- Fix missing
@container
suggestion in IntelliSense (#15288)
v3.4.16
v4.0.0-beta.4
Fixed
- Don't scan source files for utilities unless
@tailwind utilities
is present in the CSS in@tailwindcss/postcss
and@tailwindcss/vite
(#15226) - Skip reserializing CSS files that don't use Tailwind features in
@tailwindcss/postcss
and@tailwindcss/vite
(#15226) - Upgrade (experimental): Do not migrate the
overflow-clip
utility (#15244) - Upgrade (experimental): Rename
backdrop-blur
tobackdrop-blur-sm
andbackdrop-blur-sm
tobackdrop-blur-xs
(#15242)
v4.0.0-beta.3
Fixed
- Ensure any necessary vendor prefixes are generated for iOS Safari, Firefox, and Chrome (#15166)
- Ensure
.group
and.peer
are prefixed when using theprefix(…)
option (#15174) - Ensure 3D transforms render correctly in Safari (#15179)
- Ensure
--spacing-*
variables take precedence over--container-*
variables (#15180) - Fix scanning classes delimited by tab characters (#15169)
- Ensure opacity modifiers and semi-transparent gradients render correctly by default in Safari (#15201)
- Fix element size thrashing when transitioning gradients on elements with a defined font-size in Safari (#15216)
- Ensure
translate-*
utilities work with arbitrary values that usecalc(…)
(#15215) - Ensure gradient stop position utilities work with arbitrary values that use
calc(…)
(#15215) - Ensure Node addons are packaged correctly with Windows ARM builds (#15171)
- Ensure the Vite plugin resolves CSS and JS files according to the configured resolver conditions ([#15173])(#15173)
- Upgrade (experimental): Migrate prefixes for
.group
and.peer
classes (#15208)
Changed
- Interpolate gradients using OKLAB instead of OKLCH by default (#15201)
- Error when
layer(…)
in@import
is not first in the list of functions/conditions (#15109) - Use unitless line-height values for font-size variables in default theme (#15216)
- Don't register custom properties with explicit types unless those custom properties need to be animateable (#15215)
v4.0.0-beta.2
Fixed
- Use configured
--letter-spacing
values for custom font size utilities (#15099) - Ensure
space-x/y-*
anddivide-x/y-*
with variants can undospace-x/y-reverse
anddivide-x/y-reverse
(#15094) - Don't print minified code when the build fails in the CLI (#15106)
- Generate the correct CSS for the
break-keep
utility (#15108) - Detect single word utilities that include numbers (e.g.
h1
) when scanning files (#15110) - Upgrade (experimental): Always add
layer(…)
as the first param to@import
(#15102)
Changed
- Revert the new base styles for buttons and form controls (#15100)
v4.0.0-beta.1
About eight months ago we open-sourced our progress on Tailwind CSS v4.0. Hundreds of hours of fixing bugs, soul-crushing backward compatibility work, and troubleshooting Windows CI failures later, I'm excited to finally tag the first public beta release.
As I talked about when we published the first alpha, Tailwind CSS v4.0 is an all-new engine built for performance, and designed for the modern web.
- Built for performance — full builds in the new engine are up to 5x faster, and incremental builds are over 100x faster — and measured in microseconds.
- Unified toolchain — built-in import handling, vendor prefixing, and syntax transforms, with no additional tooling required.
- CSS-first configuration — a reimagined developer experience where you customize and extend the framework directly in CSS instead of a JavaScript configuration file.
- Designed for the modern web — built on native cascade layers, wide-gamut colors, and including first-class support for modern CSS features like container queries,
@starting-style
, popovers, and more.
There's so much more to say, but everything you need to get started is in the new beta documentation we published today:
Get started with Tailwind CSS v4.0 Beta 1 →
Start building and help us bullet-proof this thing for the stable release early in the new year.