
- Tailwind CSS - Home
- Tailwind CSS - Roadmap
- Tailwind CSS - Introduction
- Tailwind CSS - Installation
- Tailwind CSS - Editor Setup
- Tailwind CSS - Utility-First Fundamentals
- Tailwind CSS - Hover, Focus, and Other States
- Tailwind CSS - Responsive Design
- Tailwind CSS - Dark Mode
- Tailwind CSS - Reusing Styles
- Tailwind CSS - Adding Custom Styles
- Tailwind CSS - Functions & Directives
- Tailwind CSS - Customization
- Tailwind CSS - Configuration
- Tailwind CSS - Content Configuration
- Tailwind CSS - Theme Configuration
- Tailwind CSS - Customizing Screens
- Tailwind CSS - Customizing Colors
- Tailwind CSS - Customizing Spacing
- Tailwind CSS - Plugins
- Tailwind CSS - Presets
- Tailwind CSS - Base Styles
- Tailwind CSS - Preflight
- Tailwind CSS - Layout
- Tailwind CSS - Aspect Ratio
- Tailwind CSS - Container
- Tailwind CSS - Columns
- Tailwind CSS - Break After
- Tailwind CSS - Break Before
- Tailwind CSS - Break Inside
- Tailwind CSS - Box Decoration Break
- Tailwind CSS - Box Sizing
- Tailwind CSS - Display
- Tailwind CSS - Floats
- Tailwind CSS - Clear
- Tailwind CSS - Isolation
- Tailwind CSS - Object Fit
- Tailwind CSS - Object Position
- Tailwind CSS - Overflow
- Tailwind CSS - Overscroll Behavior
- Tailwind CSS - Position
- Tailwind CSS - Top / Right / Bottom / Left
- Tailwind CSS - Visibility
- Tailwind CSS - Z-Index
- Tailwind CSS - Flexbox & Grid
- Tailwind CSS - Flex Basis
- Tailwind CSS - Flex Direction
- Tailwind CSS - Flex Wrap
- Tailwind CSS - Flex
- Tailwind CSS - Flex Grow
- Tailwind CSS - Flex Shrink
- Tailwind CSS - Order
- Tailwind CSS - Grid Template Columns
- Tailwind CSS - Grid Column Start / End
- Tailwind CSS - Grid Template Rows
- Tailwind CSS - Grid Row Start / End
- Tailwind CSS - Grid Auto Flow
- Tailwind CSS - Grid Auto Columns
- Tailwind CSS - Grid Auto Rows
- Tailwind CSS - Gap
- Tailwind CSS - Justify Content
- Tailwind CSS - Justify Items
- Tailwind CSS - Justify Self
- Tailwind CSS - Align Content
- Tailwind CSS - Align Items
- Tailwind CSS - Align Self
- Tailwind CSS - Place Content
- Tailwind CSS - Place Items
- Tailwind CSS - Place Self
- Tailwind CSS - Spacing
- Tailwind CSS - Padding
- Tailwind CSS - Margin
- Tailwind CSS - Space Between
- Tailwind CSS - Sizing
- Tailwind CSS - Width
- Tailwind CSS - Min-Width
- Tailwind CSS - Max-Width
- Tailwind CSS - Height
- Tailwind CSS - Min-Height
- Tailwind CSS - Max-Height
- Tailwind CSS - Size
- Tailwind CSS - Typography
- Tailwind CSS - Font Family
- Tailwind CSS - Font Size
- Tailwind CSS - Font Smoothing
- Tailwind CSS - Font Style
- Tailwind CSS - Font Weight
- Tailwind CSS - Font Variant Numeric
- Tailwind CSS - Letter Spacing
- Tailwind CSS - Line Clamp
- Tailwind CSS - Line Height
- Tailwind CSS - List Style Image
- Tailwind CSS - List Style Position
- Tailwind CSS - List Style Type
- Tailwind CSS - Text Align
- Tailwind CSS - Text Color
- Tailwind CSS - Text Decoration
- Tailwind CSS - Text Decoration Color
- Tailwind CSS - Text Decoration Style
- Tailwind CSS - Text Decoration Thickness
- Tailwind CSS - Text Underline Offset
- Tailwind CSS - Text Transform
- Tailwind CSS - Text Overflow
- Tailwind CSS - Text Wrap
- Tailwind CSS - Text Indent
- Tailwind CSS - Vertical Align
- Tailwind CSS - Whitespace
- Tailwind CSS - Word Break
- Tailwind CSS - Hyphens
- Tailwind CSS - Content
- Tailwind CSS - Backgrounds
- Tailwind CSS - Background Attachment
- Tailwind CSS - Background Clip
- Tailwind CSS - Background Color
- Tailwind CSS - Background Origin
- Tailwind CSS - Background Position
- Tailwind CSS - Background Repeat
- Tailwind CSS - Background Size
- Tailwind CSS - Background Image
- Tailwind CSS - Gradient Color Stops
- Tailwind CSS - Borders
- Tailwind CSS - Border Radius
- Tailwind CSS - Border Width
- Tailwind CSS - Border Color
- Tailwind CSS - Border Style
- Tailwind CSS - Divide Width
- Tailwind CSS - Divide Color
- Tailwind CSS - Divide Style
- Tailwind CSS - Outline Width
- Tailwind CSS - Outline Color
- Tailwind CSS - Outline Style
- Tailwind CSS - Outline Offset
- Tailwind CSS - Ring Width
- Tailwind CSS - Ring Color
- Tailwind CSS - Ring Offset Width
- Tailwind CSS - Ring Offset Color
- Tailwind CSS - Effects
- Tailwind CSS - Box Shadow
- Tailwind CSS - Box Shadow Color
- Tailwind CSS - Opacity
- Tailwind CSS - Mix Blend Mode
- Tailwind CSS - Background Blend Mode
- Tailwind CSS - Filters
- Tailwind CSS - Blur
- Tailwind CSS - Brightness
- Tailwind CSS - Contrast
- Tailwind CSS - Drop Shadow
- Tailwind CSS - Grayscale
- Tailwind CSS - Hue Rotate
- Tailwind CSS - Invert
- Tailwind CSS - Saturate
- Tailwind CSS - Sepia
- Tailwind CSS - Backdrop Blur
- Tailwind CSS - Backdrop Brightness
- Tailwind CSS - Backdrop Contrast
- Tailwind CSS - Backdrop Grayscale
- Tailwind CSS - Backdrop Hue Rotate
- Tailwind CSS - Backdrop Invert
- Tailwind CSS - Backdrop Opacity
- Tailwind CSS - Backdrop Saturate
- Tailwind CSS - Backdrop Sepia
- Tailwind CSS - Tables
- Tailwind CSS - Border Collapse
- Tailwind CSS - Border Spacing
- Tailwind CSS - Table Layout
- Tailwind CSS - Caption Side
- Tailwind CSS - Transitions & Animation
- Tailwind CSS - Transition Property
- Tailwind CSS - Transition Duration
- Tailwind CSS - Transition Timing Function
- Tailwind CSS - Transition Delay
- Tailwind CSS - Animation
- Tailwind CSS - Transform
- Tailwind CSS - Scale
- Tailwind CSS - Rotate
- Tailwind CSS - Translate
- Tailwind CSS - Skew
- Tailwind CSS - Transform Origin
- Tailwind CSS - Interactivity
- Tailwind CSS - Accent Color
- Tailwind CSS - Appearance
- Tailwind CSS - Cursor
- Tailwind CSS - Caret Color
- Tailwind CSS - Pointer Events
- Tailwind CSS - Resize
- Tailwind CSS - Scroll Behavior
- Tailwind CSS - Scroll Margin
- Tailwind CSS - Scroll Padding
- Tailwind CSS - Scroll Snap Align
- Tailwind CSS - Scroll Snap Stop
- Tailwind CSS - Scroll Snap Type
- Tailwind CSS - Touch Action
- Tailwind CSS - User Select
- Tailwind CSS - Will Change
- Tailwind CSS - SVG
- Tailwind CSS - Fill
- Tailwind CSS - Stroke
- Tailwind CSS - Stroke Width
- Tailwind CSS - Accessibility
- Tailwind CSS - Screen Readers
- Tailwind CSS - Forced Color Adjust
- Tailwind CSS - Bonus
- Tailwind CSS - Using with Preprocessors
- Tailwind CSS - Optimizing for Production
- Tailwind CSS - References
- Tailwind CSS - Core Concepts
- Tailwind CSS - Customization
- Tailwind CSS - Layout
- Tailwind CSS - Flexbox & Grid
- Tailwind CSS - Spacing
- Tailwind CSS - Sizing
- Tailwind CSS - Typography
- Tailwind CSS - Backgrounds
- Tailwind CSS - Borders
- Tailwind CSS - Effects
- Tailwind CSS - Filters
- Tailwind CSS - Tables
- Tailwind CSS - Transitions & Animation
- Tailwind CSS - Transforms
- Tailwind CSS - Interactivity
- Tailwind CSS - Resources
- Tailwind CSS - Discussion
- Tailwind CSS - Useful Resources
Tailwind CSS - Configuration
Tailwind CSS Configuration allows to easily customize the framework as per the project needs by defining various aspects of the framework, such as theme, colors, screen, plugin, etc., using the 'tailwind.config.js' file.
How to Generate the Configuration File?
The following is the list of step-by-step guidance for generating the 'tailwind.config.js' file.
-
Tailwind CSS Installation: The Installation of Tailwind CSS is the mandatory step that has to be done first. Run the following command to generate the default configuration file:
npm install tailwindcss
-
Generate the Configuration File: By using the following command, the 'tailwind.config.js' file can
be easily generated.
npx tailwind css init
- Resultant File: The following file will be generated.

Customize the Configuration
The 'tailwind.config.js' file allows to easily customize the configuration and aligns utility classes with project's specific design requirements. We can easily customize the theme, fonts, colors, screens, spacing, plugin, and more on it, as showed below.
- Content: The content section of the 'tailwind.config.js' file enables you to add the path of all HTML templates, JS components, and other files containing Tailwind CSS classes.
/** @type {import('tailwindcss').Config} */ module.exports = { content: [ './pages/**/*.{html,js}', './components/**/*.{html,js}', ], // ... }
/** @type {import('tailwindcss').Config} */ module.exports = { // ... theme: { colors: { 'blue': '#1fb6ff', 'purple': '#7e5bef', 'pink': '#ff49db', }, fontFamily: { sans: ['Graphik', 'sans-serif'], serif: ['Merriweather', 'serif'], }, extend: { spacing: { '8xl': '96rem', '9xl': '128rem', }, } } }The plugin section of the 'tailwind.config.js' file enables you to add extra utilities, components, base styles, custom variants, and more, as shown below.
/** @type {import('tailwindcss').Config} */ module.exports = { // ... plugins: [ require('@tailwindcss/forms'), require('@tailwindcss/aspect-ratio'), require('@tailwindcss/typography'), require('tailwindcss-children'), ], }
/** @type {import('tailwindcss').Config} */ module.exports = { prefix: 'tw-', }
Now every class will be generated with the configured prefix:
.tw-text-left { text-align: left; } .tw-text-center { text-align: center; } .tw-text-right { text-align: right; } /* etc. */
Add the dash modifier before your prefix for negative values. For example, -mt-8 becomes -tw-mt-8 if your prefix is tw-.
Note: Prefixes apply only to Tailwind-generated classes, not to your custom classes. To prefix your own utilities, simply add the prefix to the class definition:
@layer utilities { .tw-bg-brand-gradient { /* ... */ } }
/** @type {import('tailwindcss').Config} */ module.exports = { important: true, }
Now all of Tailwind's utility classes will be generated as '!important':
.leading-none { line-height: 1 !important; } .leading-tight { line-height: 1.25 !important; } .leading-snug { line-height: 1.375 !important; } /* etc. */
This also works for custom utilities you create with the '@layer utilities' directive in your CSS.
/* Input */ @layer utilities { .bg-brand-gradient { background-image: linear-gradient(#3490dc, #6574cd); } } /* Output */ .bg-brand-gradient { background-image: linear-gradient(#3490dc, #6574cd) !important; }
Selector strategy: Setting important to true can cause conflicts with third-party JS libraries using inline styles, as Tailwind's '!important' utilities will override them and may break your design.
To avoid this issue, follow the following measures:
- Set 'important' to an ID selector like '#app'. This configuration prefixes your utilities with the given selector, increasing their specificity without using '!important'.
/** @type {import('tailwindcss').Config} */ module.exports = { // ... important: '#app', }
Important Modifier You can also make a utility important, by adding a '!' at the beginning of its name. Place the '!' after any variants but before any prefix. This helps when you need more specificity to override other styles.
/** @type {import('tailwindcss').Config} */ module.exports = { // ... important: '#app', }You can use the corePlugins section to turn off any default Tailwind classes that you don't need.
/** @type {import('tailwindcss').Config} */ module.exports = { corePlugins: { float: false, objectFit: false, objectPosition: false, } }
If you want to safelist which core plugins should be enabled, list them in an array.
/** @type {import('tailwindcss').Config} */ module.exports = { corePlugins: [ 'margin', 'padding', 'backgroundColor', // ... ] }
If you want to disable all of Tailwind's core plugins and use only your custom plugins, provide an empty array.
/** @type {import('tailwindcss').Config} */ module.exports = { corePlugins: [] }
Following is the list of every core plugin for reference:
Core Plugin | Description |
---|---|
accentColor | The accent-color utilities like accent-green-800 |
accessibility | The sr-only and not-sr-only utilities |
alignContent | The align-content utilities like content-between |
alignItems | The align-items utilities like items-center |
alignSelf | The align-self utilities like self-end |
animation | The animation utilities like animate-ping |
appearance | The appearance utilities like appearance-none |
aspectRatio | The aspect-ratio utilities like aspect-square |
backdropBlur | The backdrop-blur utilities like backdrop-blur-md |
backdropBrightness | The backdrop-brightness utilities like backdrop-brightness-100 |
backdropContrast | The backdrop-contrast utilities like backdrop-contrast-100 |
backdropFilter | The backdrop-filter utilities like backdrop-filter |
backdropGrayscale | The backdrop-grayscale utilities like backdrop-grayscale-0 |
backdropHueRotate | The backdrop-hue-rotate utilities like backdrop-hue-rotate-30 |
backdropInvert | The backdrop-invert utilities like backdrop-invert-0 |
backdropOpacity | The backdrop-opacity utilities like backdrop-opacity-50 |
backdropSaturate | The backdrop-saturate utilities like backdrop-saturate-100 |
backdropSepia | The backdrop-sepia utilities like backdrop-sepia-0 |
backgroundAttachment | The background-attachment utilities like bg-local |
backgroundBlendMode | The background-blend-mode utilities like bg-blend-color-burn |
backgroundClip | The background-clip utilities like bg-clip-padding |
backgroundColor | The background-color utilities like bg-green-800 |
backgroundImage | The background-image utilities like bg-gradient-to-br |
backgroundOpacity | The background-color opacity utilities like bg-opacity-25 |
backgroundOrigin | The background-origin utilities like bg-origin-padding |
backgroundPosition | The background-position utilities like bg-left-top |
backgroundRepeat | The background-repeat utilities like bg-repeat-x |
backgroundSize | The background-size utilities like bg-cover |
blur | The blur utilities like blur-md |
borderCollapse | The border-collapse utilities like border-collapse |
borderColor | The border-color utilities like border-e-green-800 |
borderOpacity | The border-color opacity utilities like border-opacity-25 |
borderRadius | The border-radius utilities like rounded-ss-lg |
borderSpacing | The border-spacing utilities like border-spacing-x-28 |
borderStyle | The border-style utilities like border-dotted |
borderWidth | The border-width utilities like border-e-4 |
boxDecorationBreak | The box-decoration-break utilities like decoration-clone |
boxShadow | The box-shadow utilities like shadow-lg |
boxShadowColor | The box-shadow-color utilities like shadow-green-800 |
boxSizing | The box-sizing utilities like box-border |
breakAfter | The break-after utilities like break-after-avoid-page |
breakBefore | The break-before utilities like break-before-avoid-page |
breakInside | The break-inside utilities like break-inside-avoid |
brightness | The brightness utilities like brightness-100 |
captionSide | The caption-side utilities like caption-top |
caretColor | The caret-color utilities like caret-green-800 |
clear | The clear utilities like clear-left |
columns | The columns utilities like columns-auto |
contain | The contain utilities like contain-size |
container | The container component |
content | The content utilities like content-none |
contrast | The contrast utilities like contrast-100 |
cursor | The cursor utilities like cursor-grab |
display | The display utilities like table-column-group |
divideColor | The between elements border-color utilities like divide-slate-500 |
divideOpacity | The divide-opacity utilities like divide-opacity-50 |
divideStyle | The divide-style utilities like divide-dotted |
divideWidth | The between elements border-width utilities like divide-x-2 |
dropShadow | The drop-shadow utilities like drop-shadow-lg |
fill | The fill utilities like fill-green-700 |
filter | The filter utilities like filter |
flex | The flex utilities like flex-auto |
flexBasis | The flex-basis utilities like basis-px |
flexDirection | The flex-direction utilities like flex-row-reverse |
flexGrow | The flex-grow utilities like flex-grow |
flexShrink | The flex-shrink utilities like flex-shrink |
flexWrap | The flex-wrap utilities like flex-wrap-reverse |
float | The float utilities like float-right |
fontFamily | The font-family utilities like font-serif |
fontSize | The font-size utilities like text-3xl |
fontSmoothing | The font-smoothing utilities like antialiased |
fontStyle | The font-style utilities like italic |
fontVariantNumeric | The font-variant-numeric utilities like oldstyle-nums |
fontWeight | The font-weight utilities like font-medium |
forcedColorAdjust | The forced-color-adjust utilities like forced-color-adjust-auto |
gap | The gap utilities like gap-x-28 |
gradientColorStops | The gradient-color-stops utilities like via-emerald-700 |
grayscale | The grayscale utilities like grayscale-0 |
gridAutoColumns | The grid-auto-columns utilities like auto-cols-min |
gridAutoFlow | The grid-auto-flow utilities like grid-flow-dense |
gridAutoRows | The grid-auto-rows utilities like auto-rows-min |
gridColumn | The grid-column utilities like col-span-6 |
gridColumnEnd | The grid-column-end utilities like col-end-7 |
gridColumnStart | The grid-column-start utilities like col-start-7 |
gridRow | The grid-row utilities like row-span-6 |
gridRowEnd | The grid-row-end utilities like row-end-7 |
gridRowStart | The grid-row-start utilities like row-start-7 |
gridTemplateColumns | The grid-template-columns utilities like grid-cols-7 |
gridTemplateRows | The grid-template-rows utilities like grid-rows-7 |
height | The height utilities like h-96 |
hueRotate | The hue-rotate utilities like hue-rotate-30 |
hyphens | The hyphens utilities like hyphens-manual |
inset | The inset utilities like end-44 |
invert | The invert utilities like invert-0 |
isolation | The isolation utilities like isolate |
justifyContent | The justify-content utilities like justify-center |
justifyItems | The justify-items utilities like justify-items-end |
justifySelf | The justify-self utilities like justify-self-end |
letterSpacing | The letter-spacing utilities like tracking-normal |
lineClamp | The line-clamp utilities like line-clamp-4 |
lineHeight | The line-height utilities like leading-9 |
listStyleImage | The list-style-image utilities like list-image-none |
listStylePosition | The list-style-position utilities like list-inside |
listStyleType | The list-style-type utilities like list-disc |
margin | The margin utilities like me-28 |
maxHeight | The max-height utilities like max-h-44 |
maxWidth | The max-width utilities like max-w-80 |
minHeight | The min-height utilities like min-h-44 |
minWidth | The min-width utilities like min-w-36 |
mixBlendMode | The mix-blend-mode utilities like mix-blend-hard-light |
objectFit | The object-fit utilities like object-fill |
objectPosition | The object-position utilities like object-left-top |
opacity | The opacity utilities like opacity-50 |
order | The order utilities like order-8 |
outlineColor | The outline-color utilities like outline-green-800 |
outlineOffset | The outline-offset utilities like outline-offset-2 |
outlineStyle | The outline-style utilities like outline-dashed |
outlineWidth | The outline-width utilities like outline-2 |
overflow | The overflow utilities like overflow-x-hidden |
overscrollBehavior | The overscroll-behavior utilities like overscroll-y-contain |
padding | The padding utilities like pe-28 |
placeContent | The place-content utilities like place-content-between |
placeItems | The place-items utilities like place-items-center |
placeSelf | The place-self utilities like place-self-end |
placeholderColor | The placeholder color utilities like placeholder-red-600 |
placeholderOpacity | The placeholder color opacity utilities like placeholder-opacity-25 |
pointerEvents | The pointer-events utilities like pointer-events-none |
position | The position utilities like absolute |
preflight | Tailwind's base/reset styles |
resize | The resize utilities like resize-y |
ringColor | The ring-color utilities like ring-green-800 |
ringOffsetColor | The ring-offset-color utilities like ring-offset-green-800 |
ringOffsetWidth | The ring-offset-width utilities like ring-offset-2 |
ringOpacity | The ring-opacity utilities like ring-opacity-50 |
ringWidth | The ring-width utilities like ring-4 |
rotate | The rotate utilities like rotate-6 |
saturate | The saturate utilities like saturate-100 |
scale | The scale utilities like scale-x-95 |
scrollBehavior | The scroll-behavior utilities like scroll-auto |
scrollMargin | The scroll-margin utilities like scroll-me-28 |
scrollPadding | The scroll-padding utilities like scroll-pe-28 |
scrollSnapAlign | The scroll-snap-align utilities like snap-end |
scrollSnapStop | The scroll-snap-stop utilities like snap-normal |
scrollSnapType | The scroll-snap-type utilities like snap-y |
sepia | The sepia utilities like sepia-0 |
size | The size utilities like size-0.5 |
skew | The skew utilities like skew-x-12 |
space | The "space-between" utilities like space-x-4 |
stroke | The stroke utilities like stroke-green-700 |
strokeWidth | The stroke-width utilities like stroke-1 |
tableLayout | The table-layout utilities like table-auto |
textAlign | The text-align utilities like text-right |
textColor | The text-color utilities like text-green-800 |
textDecoration | The text-decoration utilities like overline |
textDecorationColor | The text-decoration-color utilities like decoration-green-800 |
textDecorationStyle | The text-decoration-style utilities like decoration-dotted |
textDecorationThickness | The text-decoration-thickness utilities like decoration-4 |
textIndent | The text-indent utilities like indent-28 |
textOpacity | The text-opacity utilities like text-opacity-50 |
textOverflow | The text-overflow utilities like overflow-ellipsis |
textTransform | The text-transform utilities like lowercase |
textUnderlineOffset | The text-underline-offset utilities like underline-offset-2 |
textWrap | The text-wrap utilities like text-nowrap |
touchAction | The touch-action utilities like touch-pan-right |
transform | The transform utility (for enabling transform features) |
transformOrigin | The transform-origin utilities like origin-bottom-right |
transitionDelay | The transition-delay utilities like delay-200 |
transitionDuration | The transition-duration utilities like duration-200 |
transitionProperty | The transition-property utilities like transition-colors |
transitionTimingFunction | The transition-timing-function utilities like ease-in |
translate | The translate utilities like translate-x-full |
userSelect | The user-select utilities like select-text |
verticalAlign | The vertical-align utilities like align-bottom |
visibility | The visibility utilities like invisible |
whitespace | The whitespace utilities like whitespace-pre |
width | The width utilities like w-2.5 |
willChange | The will-change utilities like will-change-scroll |
wordBreak | The word-break utilities like break-words |
zIndex | The z-index utilities like z-30 |
Setting Up multiple Configuration
For projects with multiple CSS files and different Tailwind settings, use the @config directive to select the config file for each CSS file.
@config "./tailwind.site.config.js"; @tailwind base; @tailwind components; @tailwind utilities;
Managing References in JavaScript
You may need to use your configuration values in your JavaScript code, like when adding styles to a React Vue component. Tailwind's resolveConfig helper makes it easy to access these values by combining them into a single object.
import resolveConfig from 'tailwindcss/resolveConfig' import tailwindConfig from './tailwind.config.js' const fullConfig = resolveConfig(tailwindConfig) fullConfig.theme.width[4] // => '1rem' fullConfig.theme.screens.md // => '768px' fullConfig.theme.boxShadow['2xl'] // => '0 25px 50px -12px rgba(0, 0, 0, 0.25)'
TypeScript Types
Tailwind CLI adds types automatically, but if you need to do it yourself, add a line above your config.
/** @type {import('tailwindcss').Config} */ module.exports = { content: [ // ... ], theme: { extend: {}, }, plugins: [], }