Releases: tailwindlabs/tailwindcss
Releases · tailwindlabs/tailwindcss
v4.0.6
v4.0.5
v4.0.4
Fixed
- Fix a crash when setting JS theme values to
null(#16210) - Ensure escaped underscores in CSS variables in arbitrary values are properly unescaped (#16206)
- Ensure that the
containersJS theme key is added to the--container-*namespace (#16169) - Ensure theme
@keyframesare generated even if an--animation-*variable spans multiple lines (#16237) - Vite: Skip parsing stylesheets with the
?commonjs-proxyflag (#16238) - Fix
order-firstandorder-lastfor Firefox (#16266) - Fix support for older instruction sets on Linux x64 builds of the standalone CLI (#16244)
- Ensure
NODE_PATHis respected when resolving JavaScript and CSS files (#16274) - Ensure Node addons are packaged correctly with FreeBSD builds (#16277)
- Fix an issue where
@variantinside a referenced stylesheet could cause a stack overflow (#16300)
v4.0.3
v4.0.2
Fixed
- Only generate positive
grid-cols-*andgrid-rows-*utilities (#16020) - Ensure escaped theme variables are handled correctly (#16064)
- Ensure we process Tailwind CSS features when only using
@referenceor@variant(#16057) - Refactor gradient implementation to work around prettier/prettier#17058 (#16072)
- Vite: Ensure hot-reloading works with SolidStart setups (#16052)
- Vite: Fix a crash when starting the development server in SolidStart setups (#16052)
- Vite: Don't rebase URLs that appear to be aliases (#16078)
- Vite: Transform
<style>blocks in HTML files (#16069) - Prevent camel-casing CSS custom properties added by JavaScript plugins (#16103)
- Do not emit
@keyframesin@theme reference(#16120) - Discard invalid declarations when parsing CSS (#16093)
- Do not emit empty CSS rules and at-rules (#16121)
- Handle
@variantwhen at the top-level of a stylesheet (#16129)
v4.0.1
Added
- Include
:openpseudo-class in existingopenvariant (#15349)
Fixed
- Remove invalid
min-w/h-noneutilities (#15845) - Discard CSS variable shorthand utilities that don't use valid CSS variables (#15738)
- Ensure font-size utilities with
nonemodifier have a line-height set e.g.text-sm/none(#15921) - Ensure font-size utilities with unknown modifier don't generate CSS (#15921)
- Don’t suggest font weight utilities more than once (#15857)
- Suggest container query variants (#15857)
- Disable bare value suggestions when not using the
--spacingvariable (#15857) - Ensure suggested classes are properly sorted (#15857)
- Don’t look at .gitignore files outside initialized repos (#15941)
- Find utilities when using the Svelte class shorthand syntax across multiple lines (#15974)
- Find utilities when using the Angular class shorthand syntax (#15974)
- Find utilities when using functions inside arrays (#15974)
- Ensure that
@tailwindcss/browserdoes not pollute the global namespace (#15978) - Ensure that
tailwind-mergeis not scanned when using the Vite plugin (#16005) - Ensure CSS theme variables are available within shadow roots (#15975)
- Fix crash when project lives in the
/directory (#15988) - Ensure custom variants have a non-empty selector list (#16009)
- Upgrade: Ensure JavaScript config files on different drives are correctly migrated (#15927)
- Upgrade: Migrate
leading-[1]toleading-none(#16004) - Upgrade: Do not migrate arbitrary leading utilities to bare values (#16004)
v4.0.0
Holy shit it's actually done — we just tagged Tailwind CSS v4.0.
Tailwind CSS v4.0 is an all-new version of the framework optimized for performance and flexibility, with a reimagined configuration and customization experience, and taking full advantage of the latest advancements the web platform has to offer.
- New high-performance engine — where full builds are up to 5x faster, and incremental builds are over 100x faster — and measured in microseconds.
- Designed for the modern web — built on cutting-edge CSS features like cascade layers, registered custom properties with
@property, andcolor-mix(). - Simplified installation — fewer dependencies, zero configuration, and just a single line of code in your CSS file.
- First-party Vite plugin — tight integration for maximum performance and minimum configuration.
- Automatic content detection — all of your template files are discovered automatically, with no configuration required.
- Built-in import support — no additional tooling necessary to bundle multiple CSS files.
- CSS-first configuration — a reimagined developer experience where you customize and extend the framework directly in CSS instead of a JavaScript configuration file.
- CSS theme variables — all of your design tokens exposed as native CSS variables so you can access them anywhere.
- Dynamic utility values and variants — stop guessing what values exist in your spacing scale, or extending your configuration for things like basic data attributes.
- Modernized P3 color palette — a redesigned, more vivid color palette that takes full advantage of modern display technology.
- Container queries — first-class APIs for styling elements based on their container size, no plugins required.
- New 3D transform utilities — transform elements in 3D space directly in your HTML.
- Expanded gradient APIs — radial and conic gradients, interpolation modes, and more.
- @starting-style support — a new variant you can use to create enter and exit transitions, without the need for JavaScript.
- not-* variant — style an element only when it doesn't match another variant, custom selector, or media or feature query.
- Even more new utilities and variants — including support for
color-scheme,field-sizing, complex shadows,inert, and more.
Start using Tailwind CSS v4.0 today by installing it in a new project, or playing with it directly in the browser on Tailwind Play.
For existing projects, we've published a comprehensive upgrade guide and built an automated upgrade tool to get you on the latest version as quickly and painlessly as possible.
For a deep-dive into everything that's new, check out the announcement post.
v4.0.0-beta.10
Added
- Add support for using
@variantto use variants in your CSS (#15663) - Include
outline-colorwhen transitioning colors (#15690)
Fixed
- Add missing
mainandbrowserfields for@tailwindcss/browser(#15594) - Support escaping
*in theme namespace syntax (e.g.:--color-\*: initial;) (#15603) - Respect
@themeoptions when resolving values in custom functional utilities (#15623) - Discard invalid variants (e.g.
data-checked-[selected=1]:*) (#15629) - Ensure
-outline-offset-*utilities are suggested in IntelliSense (#15646) - Write to
stdoutwhen--outputis set to-or omitted with@tailwindcss/cli(#15656) - Prevent
not-*from being used with variants that have multiple sibling rules (#15689) - Upgrade (experimental): Pretty print
--spacing(…)to prevent ambiguity (#15596)
Changed
v4.0.0-beta.9
Added
- Add
@tailwindcss/browserpackage to run Tailwind CSS in the browser (#15558) - Add
@reference "…"API as a replacement for the previous@import "…" referenceoption (#15565) - Add support for defining functional utilities in CSS (#15455)
- Add new
--spacing(…),--alpha(…), and--theme(…)CSS functions (#15572) - Add musl-based Linux builds of the standalone CLI (#15567)
- Improve performance of internal AST manipulations (#15529)
Fixed
- Use the correct property value for
place-content-between,place-content-around, andplace-content-evenlyutilities (#15440) - Don’t detect arbitrary properties when preceded by an escape (#15456)
- Fix incorrectly named
bg-roundandbg-spaceutilities tobg-repeat-roundtobg-repeat-space(#15462) - Fix
inset-shadow-*suggestions in IntelliSense (#15471) - Only compile arbitrary values ending in
](#15503) - Ensure
@applyrules are processed in the correct order (#15542) - Allow negative utility names in
@utility(#15573) - Remove all
@keyframescontributed by JavaScript plugins when using@referenceimports (#15581) - Upgrade (experimental): Do not extract class names from functions (e.g.
shadowinfilter: 'drop-shadow(…)') (#15566) - Upgrade (experimental): Migrate
theme(spacing.2)to--spacing(2)(#15579) - Upgrade (experimental): Migrate
theme(…)to--theme(…)(#15579)
Changed
v4.0.0-beta.8
Fixed
- Ensure
Symbol.disposeandSymbol.asyncDisposeare polyfilled (#15404)
