Menu

Tailwind CSS Text Decoration Color

Text Decoration Color in CSS is a property that allows you to define the color used for text decorations, like underlines, overlines, or line-through effects. It provides precise control over how these decorations complement your design. With Tailwind CSS, you gain access to an extensive library of utilities that streamline setting and customizing text decoration colors, ensuring your designs are both visually distinct and consistent.

Tailwind CSS simplifies the process of applying text decoration colors with pre-defined utility classes. These utilities include support for various states, responsive breakpoints, and even custom values. Let’s explore how you can leverage Tailwind’s capabilities to implement text decoration colors effectively.

ClassPropertiesExample
decoration-inherittext-decoration-color: inherit;<div className="decoration-inherit"></div>
decoration-currenttext-decoration-color: currentColor;<div className="decoration-current"></div>
decoration-transparenttext-decoration-color: transparent;<div className="decoration-transparent"></div>
decoration-blacktext-decoration-color: #000;<div className="decoration-black"></div>
decoration-whitetext-decoration-color: #fff;<div className="decoration-white"></div>
decoration-slate-50text-decoration-color: #f8fafc;<div className="decoration-slate-50"></div>
decoration-slate-100text-decoration-color: #f1f5f9;<div className="decoration-slate-100"></div>
decoration-slate-200text-decoration-color: #e2e8f0;<div className="decoration-slate-200"></div>
decoration-slate-300text-decoration-color: #cbd5e1;<div className="decoration-slate-300"></div>
decoration-slate-400text-decoration-color: #94a3b8;<div className="decoration-slate-400"></div>
decoration-slate-500text-decoration-color: #64748b;<div className="decoration-slate-500"></div>
decoration-slate-600text-decoration-color: #475569;<div className="decoration-slate-600"></div>
decoration-slate-700text-decoration-color: #334155;<div className="decoration-slate-700"></div>
decoration-slate-800text-decoration-color: #1e293b;<div className="decoration-slate-800"></div>
decoration-slate-900text-decoration-color: #0f172a;<div className="decoration-slate-900"></div>
decoration-slate-950text-decoration-color: #020617;<div className="decoration-slate-950"></div>
decoration-gray-50text-decoration-color: #f9fafb;<div className="decoration-gray-50"></div>
decoration-gray-100text-decoration-color: #f3f4f6;<div className="decoration-gray-100"></div>
decoration-gray-200text-decoration-color: #e5e7eb;<div className="decoration-gray-200"></div>
decoration-gray-300text-decoration-color: #d1d5db;<div className="decoration-gray-300"></div>
decoration-gray-400text-decoration-color: #9ca3af;<div className="decoration-gray-400"></div>
decoration-gray-500text-decoration-color: #6b7280;<div className="decoration-gray-500"></div>
decoration-gray-600text-decoration-color: #4b5563;<div className="decoration-gray-600"></div>
decoration-gray-700text-decoration-color: #374151;<div className="decoration-gray-700"></div>
decoration-gray-800text-decoration-color: #1f2937;<div className="decoration-gray-800"></div>
decoration-gray-900text-decoration-color: #111827;<div className="decoration-gray-900"></div>
decoration-gray-950text-decoration-color: #030712;<div className="decoration-gray-950"></div>
decoration-zinc-50text-decoration-color: #fafafa;<div className="decoration-zinc-50"></div>
decoration-zinc-100text-decoration-color: #f4f4f5;<div className="decoration-zinc-100"></div>
decoration-zinc-200text-decoration-color: #e4e4e7;<div className="decoration-zinc-200"></div>
decoration-zinc-300text-decoration-color: #d4d4d8;<div className="decoration-zinc-300"></div>
decoration-zinc-400text-decoration-color: #a1a1aa;<div className="decoration-zinc-400"></div>
decoration-zinc-500text-decoration-color: #71717a;<div className="decoration-zinc-500"></div>
decoration-zinc-600text-decoration-color: #52525b;<div className="decoration-zinc-600"></div>
decoration-zinc-700text-decoration-color: #3f3f46;<div className="decoration-zinc-700"></div>
decoration-zinc-800text-decoration-color: #27272a;<div className="decoration-zinc-800"></div>
decoration-zinc-900text-decoration-color: #18181b;<div className="decoration-zinc-900"></div>
decoration-zinc-950text-decoration-color: #09090b;<div className="decoration-zinc-950"></div>
decoration-neutral-50text-decoration-color: #fafafa;<div className="decoration-neutral-50"></div>
decoration-neutral-100text-decoration-color: #f5f5f5;<div className="decoration-neutral-100"></div>
decoration-neutral-200text-decoration-color: #e5e5e5;<div className="decoration-neutral-200"></div>
decoration-neutral-300text-decoration-color: #d4d4d4;<div className="decoration-neutral-300"></div>
decoration-neutral-400text-decoration-color: #a3a3a3;<div className="decoration-neutral-400"></div>
decoration-neutral-500text-decoration-color: #737373;<div className="decoration-neutral-500"></div>
decoration-neutral-600text-decoration-color: #525252;<div className="decoration-neutral-600"></div>
decoration-neutral-700text-decoration-color: #404040;<div className="decoration-neutral-700"></div>
decoration-neutral-800text-decoration-color: #262626;<div className="decoration-neutral-800"></div>
decoration-neutral-900text-decoration-color: #171717;<div className="decoration-neutral-900"></div>
decoration-neutral-950text-decoration-color: #0a0a0a;<div className="decoration-neutral-950"></div>
decoration-stone-50text-decoration-color: #fafaf9;<div className="decoration-stone-50"></div>
decoration-stone-100text-decoration-color: #f5f5f4;<div className="decoration-stone-100"></div>
decoration-stone-200text-decoration-color: #e7e5e4;<div className="decoration-stone-200"></div>
decoration-stone-300text-decoration-color: #d6d3d1;<div className="decoration-stone-300"></div>
decoration-stone-400text-decoration-color: #a8a29e;<div className="decoration-stone-400"></div>
decoration-stone-500text-decoration-color: #78716c;<div className="decoration-stone-500"></div>
decoration-stone-600text-decoration-color: #57534e;<div className="decoration-stone-600"></div>
decoration-stone-700text-decoration-color: #44403c;<div className="decoration-stone-700"></div>
decoration-stone-800text-decoration-color: #292524;<div className="decoration-stone-800"></div>
decoration-stone-900text-decoration-color: #1c1917;<div className="decoration-stone-900"></div>
decoration-stone-950text-decoration-color: #0c0a09;<div className="decoration-stone-950"></div>
decoration-red-50text-decoration-color: #fef2f2;<div className="decoration-red-50"></div>
decoration-red-100text-decoration-color: #fee2e2;<div className="decoration-red-100"></div>
decoration-red-200text-decoration-color: #fecaca;<div className="decoration-red-200"></div>
decoration-red-300text-decoration-color: #fca5a5;<div className="decoration-red-300"></div>
decoration-red-400text-decoration-color: #f87171;<div className="decoration-red-400"></div>
decoration-red-500text-decoration-color: #ef4444;<div className="decoration-red-500"></div>
decoration-red-600text-decoration-color: #dc2626;<div className="decoration-red-600"></div>
decoration-red-700text-decoration-color: #b91c1c;<div className="decoration-red-700"></div>
decoration-red-800text-decoration-color: #991b1b;<div className="decoration-red-800"></div>
decoration-red-900text-decoration-color: #7f1d1d;<div className="decoration-red-900"></div>
decoration-red-950text-decoration-color: #450a0a;<div className="decoration-red-950"></div>
decoration-orange-50text-decoration-color: #fff7ed;<div className="decoration-orange-50"></div>
decoration-orange-100text-decoration-color: #ffedd5;<div className="decoration-orange-100"></div>
decoration-orange-200text-decoration-color: #fed7aa;<div className="decoration-orange-200"></div>
decoration-orange-300text-decoration-color: #fdba74;<div className="decoration-orange-300"></div>
decoration-orange-400text-decoration-color: #fb923c;<div className="decoration-orange-400"></div>
decoration-orange-500text-decoration-color: #f97316;<div className="decoration-orange-500"></div>
decoration-orange-600text-decoration-color: #ea580c;<div className="decoration-orange-600"></div>
decoration-orange-700text-decoration-color: #c2410c;<div className="decoration-orange-700"></div>
decoration-orange-800text-decoration-color: #9a3412;<div className="decoration-orange-800"></div>
decoration-orange-900text-decoration-color: #7c2d12;<div className="decoration-orange-900"></div>
decoration-orange-950text-decoration-color: #431407;<div className="decoration-orange-950"></div>
decoration-amber-50text-decoration-color: #fffbeb;<div className="decoration-amber-50"></div>
decoration-amber-100text-decoration-color: #fef3c7;<div className="decoration-amber-100"></div>
decoration-amber-200text-decoration-color: #fde68a;<div className="decoration-amber-200"></div>
decoration-amber-300text-decoration-color: #fcd34d;<div className="decoration-amber-300"></div>
decoration-amber-400text-decoration-color: #fbbf24;<div className="decoration-amber-400"></div>
decoration-amber-500text-decoration-color: #f59e0b;<div className="decoration-amber-500"></div>
decoration-amber-600text-decoration-color: #d97706;<div className="decoration-amber-600"></div>
decoration-amber-700text-decoration-color: #b45309;<div className="decoration-amber-700"></div>
decoration-amber-800text-decoration-color: #92400e;<div className="decoration-amber-800"></div>
decoration-amber-900text-decoration-color: #78350f;<div className="decoration-amber-900"></div>
decoration-amber-950text-decoration-color: #451a03;<div className="decoration-amber-950"></div>
decoration-yellow-50text-decoration-color: #fefce8;<div className="decoration-yellow-50"></div>
decoration-yellow-100text-decoration-color: #fef9c3;<div className="decoration-yellow-100"></div>
decoration-yellow-200text-decoration-color: #fef08a;<div className="decoration-yellow-200"></div>
decoration-yellow-300text-decoration-color: #fde047;<div className="decoration-yellow-300"></div>
decoration-yellow-400text-decoration-color: #facc15;<div className="decoration-yellow-400"></div>
decoration-yellow-500text-decoration-color: #eab308;<div className="decoration-yellow-500"></div>
decoration-yellow-600text-decoration-color: #ca8a04;<div className="decoration-yellow-600"></div>
decoration-yellow-700text-decoration-color: #a16207;<div className="decoration-yellow-700"></div>
decoration-yellow-800text-decoration-color: #854d0e;<div className="decoration-yellow-800"></div>
decoration-yellow-900text-decoration-color: #713f12;<div className="decoration-yellow-900"></div>
decoration-yellow-950text-decoration-color: #422006;<div className="decoration-yellow-950"></div>
decoration-lime-50text-decoration-color: #f7fee7;<div className="decoration-lime-50"></div>
decoration-lime-100text-decoration-color: #ecfccb;<div className="decoration-lime-100"></div>
decoration-lime-200text-decoration-color: #d9f99d;<div className="decoration-lime-200"></div>
decoration-lime-300text-decoration-color: #bef264;<div className="decoration-lime-300"></div>
decoration-lime-400text-decoration-color: #a3e635;<div className="decoration-lime-400"></div>
decoration-lime-500text-decoration-color: #84cc16;<div className="decoration-lime-500"></div>
decoration-lime-600text-decoration-color: #65a30d;<div className="decoration-lime-600"></div>
decoration-lime-700text-decoration-color: #4d7c0f;<div className="decoration-lime-700"></div>
decoration-lime-800text-decoration-color: #3f6212;<div className="decoration-lime-800"></div>
decoration-lime-900text-decoration-color: #365314;<div className="decoration-lime-900"></div>
decoration-lime-950text-decoration-color: #1a2e05;<div className="decoration-lime-950"></div>
decoration-green-50text-decoration-color: #f0fdf4;<div className="decoration-green-50"></div>
decoration-green-100text-decoration-color: #dcfce7;<div className="decoration-green-100"></div>
decoration-green-200text-decoration-color: #bbf7d0;<div className="decoration-green-200"></div>
decoration-green-300text-decoration-color: #86efac;<div className="decoration-green-300"></div>
decoration-green-400text-decoration-color: #4ade80;<div className="decoration-green-400"></div>
decoration-green-500text-decoration-color: #22c55e;<div className="decoration-green-500"></div>
decoration-green-600text-decoration-color: #16a34a;<div className="decoration-green-600"></div>
decoration-green-700text-decoration-color: #15803d;<div className="decoration-green-700"></div>
decoration-green-800text-decoration-color: #166534;<div className="decoration-green-800"></div>
decoration-green-900text-decoration-color: #14532d;<div className="decoration-green-900"></div>
decoration-green-950text-decoration-color: #052e16;<div className="decoration-green-950"></div>
decoration-emerald-50text-decoration-color: #ecfdf5;<div className="decoration-emerald-50"></div>
decoration-emerald-100text-decoration-color: #d1fae5;<div className="decoration-emerald-100"></div>
decoration-emerald-200text-decoration-color: #a7f3d0;<div className="decoration-emerald-200"></div>
decoration-emerald-300text-decoration-color: #6ee7b7;<div className="decoration-emerald-300"></div>
decoration-emerald-400text-decoration-color: #34d399;<div className="decoration-emerald-400"></div>
decoration-emerald-500text-decoration-color: #10b981;<div className="decoration-emerald-500"></div>
decoration-emerald-600text-decoration-color: #059669;<div className="decoration-emerald-600"></div>
decoration-emerald-700text-decoration-color: #047857;<div className="decoration-emerald-700"></div>
decoration-emerald-800text-decoration-color: #065f46;<div className="decoration-emerald-800"></div>
decoration-emerald-900text-decoration-color: #064e3b;<div className="decoration-emerald-900"></div>
decoration-emerald-950text-decoration-color: #022c22;<div className="decoration-emerald-950"></div>
decoration-teal-50text-decoration-color: #f0fdfa;<div className="decoration-teal-50"></div>
decoration-teal-100text-decoration-color: #ccfbf1;<div className="decoration-teal-100"></div>
decoration-teal-200text-decoration-color: #99f6e4;<div className="decoration-teal-200"></div>
decoration-teal-300text-decoration-color: #5eead4;<div className="decoration-teal-300"></div>
decoration-teal-400text-decoration-color: #2dd4bf;<div className="decoration-teal-400"></div>
decoration-teal-500text-decoration-color: #14b8a6;<div className="decoration-teal-500"></div>
decoration-teal-600text-decoration-color: #0d9488;<div className="decoration-teal-600"></div>
decoration-teal-700text-decoration-color: #0f766e;<div className="decoration-teal-700"></div>
decoration-teal-800text-decoration-color: #115e59;<div className="decoration-teal-800"></div>
decoration-teal-900text-decoration-color: #134e4a;<div className="decoration-teal-900"></div>
decoration-teal-950text-decoration-color: #042f2e;<div className="decoration-teal-950"></div>
decoration-cyan-50text-decoration-color: #ecfeff;<div className="decoration-cyan-50"></div>
decoration-cyan-100text-decoration-color: #cffafe;<div className="decoration-cyan-100"></div>
decoration-cyan-200text-decoration-color: #a5f3fc;<div className="decoration-cyan-200"></div>
decoration-cyan-300text-decoration-color: #67e8f9;<div className="decoration-cyan-300"></div>
decoration-cyan-400text-decoration-color: #22d3ee;<div className="decoration-cyan-400"></div>
decoration-cyan-500text-decoration-color: #06b6d4;<div className="decoration-cyan-500"></div>
decoration-cyan-600text-decoration-color: #0891b2;<div className="decoration-cyan-600"></div>
decoration-cyan-700text-decoration-color: #0e7490;<div className="decoration-cyan-700"></div>
decoration-cyan-800text-decoration-color: #155e75;<div className="decoration-cyan-800"></div>
decoration-cyan-900text-decoration-color: #164e63;<div className="decoration-cyan-900"></div>
decoration-cyan-950text-decoration-color: #083344;<div className="decoration-cyan-950"></div>
decoration-sky-50text-decoration-color: #f0f9ff;<div className="decoration-sky-50"></div>
decoration-sky-100text-decoration-color: #e0f2fe;<div className="decoration-sky-100"></div>
decoration-sky-200text-decoration-color: #bae6fd;<div className="decoration-sky-200"></div>
decoration-sky-300text-decoration-color: #7dd3fc;<div className="decoration-sky-300"></div>
decoration-sky-400text-decoration-color: #38bdf8;<div className="decoration-sky-400"></div>
decoration-sky-500text-decoration-color: #0ea5e9;<div className="decoration-sky-500"></div>
decoration-sky-600text-decoration-color: #0284c7;<div className="decoration-sky-600"></div>
decoration-sky-700text-decoration-color: #0369a1;<div className="decoration-sky-700"></div>
decoration-sky-800text-decoration-color: #075985;<div className="decoration-sky-800"></div>
decoration-sky-900text-decoration-color: #0c4a6e;<div className="decoration-sky-900"></div>
decoration-sky-950text-decoration-color: #082f49;<div className="decoration-sky-950"></div>
decoration-blue-50text-decoration-color: #eff6ff;<div className="decoration-blue-50"></div>
decoration-blue-100text-decoration-color: #dbeafe;<div className="decoration-blue-100"></div>
decoration-blue-200text-decoration-color: #bfdbfe;<div className="decoration-blue-200"></div>
decoration-blue-300text-decoration-color: #93c5fd;<div className="decoration-blue-300"></div>
decoration-blue-400text-decoration-color: #60a5fa;<div className="decoration-blue-400"></div>
decoration-blue-500text-decoration-color: #3b82f6;<div className="decoration-blue-500"></div>
decoration-blue-600text-decoration-color: #2563eb;<div className="decoration-blue-600"></div>
decoration-blue-700text-decoration-color: #1d4ed8;<div className="decoration-blue-700"></div>
decoration-blue-800text-decoration-color: #1e40af;<div className="decoration-blue-800"></div>
decoration-blue-900text-decoration-color: #1e3a8a;<div className="decoration-blue-900"></div>
decoration-blue-950text-decoration-color: #172554;<div className="decoration-blue-950"></div>
decoration-indigo-50text-decoration-color: #eef2ff;<div className="decoration-indigo-50"></div>
decoration-indigo-100text-decoration-color: #e0e7ff;<div className="decoration-indigo-100"></div>
decoration-indigo-200text-decoration-color: #c7d2fe;<div className="decoration-indigo-200"></div>
decoration-indigo-300text-decoration-color: #a5b4fc;<div className="decoration-indigo-300"></div>
decoration-indigo-400text-decoration-color: #818cf8;<div className="decoration-indigo-400"></div>
decoration-indigo-500text-decoration-color: #6366f1;<div className="decoration-indigo-500"></div>
decoration-indigo-600text-decoration-color: #4f46e5;<div className="decoration-indigo-600"></div>
decoration-indigo-700text-decoration-color: #4338ca;<div className="decoration-indigo-700"></div>
decoration-indigo-800text-decoration-color: #3730a3;<div className="decoration-indigo-800"></div>
decoration-indigo-900text-decoration-color: #312e81;<div className="decoration-indigo-900"></div>
decoration-indigo-950text-decoration-color: #1e1b4b;<div className="decoration-indigo-950"></div>
decoration-violet-50text-decoration-color: #f5f3ff;<div className="decoration-violet-50"></div>
decoration-violet-100text-decoration-color: #ede9fe;<div className="decoration-violet-100"></div>
decoration-violet-200text-decoration-color: #ddd6fe;<div className="decoration-violet-200"></div>
decoration-violet-300text-decoration-color: #c4b5fd;<div className="decoration-violet-300"></div>
decoration-violet-400text-decoration-color: #a78bfa;<div className="decoration-violet-400"></div>
decoration-violet-500text-decoration-color: #8b5cf6;<div className="decoration-violet-500"></div>
decoration-violet-600text-decoration-color: #7c3aed;<div className="decoration-violet-600"></div>
decoration-violet-700text-decoration-color: #6d28d9;<div className="decoration-violet-700"></div>
decoration-violet-800text-decoration-color: #5b21b6;<div className="decoration-violet-800"></div>
decoration-violet-900text-decoration-color: #4c1d95;<div className="decoration-violet-900"></div>
decoration-violet-950text-decoration-color: #2e1065;<div className="decoration-violet-950"></div>
decoration-purple-50text-decoration-color: #faf5ff;<div className="decoration-purple-50"></div>
decoration-purple-100text-decoration-color: #f3e8ff;<div className="decoration-purple-100"></div>
decoration-purple-200text-decoration-color: #e9d5ff;<div className="decoration-purple-200"></div>
decoration-purple-300text-decoration-color: #d8b4fe;<div className="decoration-purple-300"></div>
decoration-purple-400text-decoration-color: #c084fc;<div className="decoration-purple-400"></div>
decoration-purple-500text-decoration-color: #a855f7;<div className="decoration-purple-500"></div>
decoration-purple-600text-decoration-color: #9333ea;<div className="decoration-purple-600"></div>
decoration-purple-700text-decoration-color: #7e22ce;<div className="decoration-purple-700"></div>
decoration-purple-800text-decoration-color: #6b21a8;<div className="decoration-purple-800"></div>
decoration-purple-900text-decoration-color: #581c87;<div className="decoration-purple-900"></div>
decoration-purple-950text-decoration-color: #3b0764;<div className="decoration-purple-950"></div>
decoration-fuchsia-50text-decoration-color: #fdf4ff;<div className="decoration-fuchsia-50"></div>
decoration-fuchsia-100text-decoration-color: #fae8ff;<div className="decoration-fuchsia-100"></div>
decoration-fuchsia-200text-decoration-color: #f5d0fe;<div className="decoration-fuchsia-200"></div>
decoration-fuchsia-300text-decoration-color: #f0abfc;<div className="decoration-fuchsia-300"></div>
decoration-fuchsia-400text-decoration-color: #e879f9;<div className="decoration-fuchsia-400"></div>
decoration-fuchsia-500text-decoration-color: #d946ef;<div className="decoration-fuchsia-500"></div>
decoration-fuchsia-600text-decoration-color: #c026d3;<div className="decoration-fuchsia-600"></div>
decoration-fuchsia-700text-decoration-color: #a21caf;<div className="decoration-fuchsia-700"></div>
decoration-fuchsia-800text-decoration-color: #86198f;<div className="decoration-fuchsia-800"></div>
decoration-fuchsia-900text-decoration-color: #701a75;<div className="decoration-fuchsia-900"></div>
decoration-fuchsia-950text-decoration-color: #4a044e;<div className="decoration-fuchsia-950"></div>
decoration-pink-50text-decoration-color: #fdf2f8;<div className="decoration-pink-50"></div>
decoration-pink-100text-decoration-color: #fce7f3;<div className="decoration-pink-100"></div>
decoration-pink-200text-decoration-color: #fbcfe8;<div className="decoration-pink-200"></div>
decoration-pink-300text-decoration-color: #f9a8d4;<div className="decoration-pink-300"></div>
decoration-pink-400text-decoration-color: #f472b6;<div className="decoration-pink-400"></div>
decoration-pink-500text-decoration-color: #ec4899;<div className="decoration-pink-500"></div>
decoration-pink-600text-decoration-color: #db2777;<div className="decoration-pink-600"></div>
decoration-pink-700text-decoration-color: #be185d;<div className="decoration-pink-700"></div>
decoration-pink-800text-decoration-color: #9d174d;<div className="decoration-pink-800"></div>
decoration-pink-900text-decoration-color: #831843;<div className="decoration-pink-900"></div>
decoration-pink-950text-decoration-color: #500724;<div className="decoration-pink-950"></div>
decoration-rose-50text-decoration-color: #fff1f2;<div className="decoration-rose-50"></div>
decoration-rose-100text-decoration-color: #ffe4e6;<div className="decoration-rose-100"></div>
decoration-rose-200text-decoration-color: #fecdd3;<div className="decoration-rose-200"></div>
decoration-rose-300text-decoration-color: #fda4af;<div className="decoration-rose-300"></div>
decoration-rose-400text-decoration-color: #fb7185;<div className="decoration-rose-400"></div>
decoration-rose-500text-decoration-color: #f43f5e;<div className="decoration-rose-500"></div>
decoration-rose-600text-decoration-color: #e11d48;<div className="decoration-rose-600"></div>
decoration-rose-700text-decoration-color: #be123c;<div className="decoration-rose-700"></div>
decoration-rose-800text-decoration-color: #9f1239;<div className="decoration-rose-800"></div>
decoration-rose-900text-decoration-color: #881337;<div className="decoration-rose-900"></div>
decoration-rose-950text-decoration-color: #4c0519;<div className="decoration-rose-950"></div>

Overview of Text Decoration Color

Adding the Text Decoration Color

You can easily set a text decoration color using utility classes provided by Tailwind CSS. These classes let you specify colors that align with your design theme without writing extra CSS.

Below is a React component demonstrating the application of a decoration color:

This is a live editor. Play around with it!
export default function DecorationColorDemo() {
  return (
    <div
      className="h-screen w-screen flex items-center justify-center bg-gray-100"
    >
      <h1 className="text-4xl font-bold underline decoration-pink-500">
        Stylish Underline
      </h1>
    </div>
  );
}
  • The underline class applies a text underline decoration.
  • The decoration-pink-500 class sets the underline color to pink as defined in Tailwind’s color palette.

By combining these classes, you achieve vibrant and flexible design choices effortlessly.

Adjusting the Opacity

Sometimes, you may want to control the transparency of the text decoration color for added emphasis or design nuance. Tailwind CSS lets you add opacity to any decoration color by using the opacity modifier along with the decoration color.

Here, decoration-blue-600/50 sets the text decoration color to blue and educes the opacity of the underline by half.

This is a live editor. Play around with it!
export default function DecorationOpacityDemo() {
  return (
    <div
      className="h-screen w-screen flex items-center justify-center bg-gray-50"
    >
      <h1 className="text-4xl font-medium underline decoration-blue-600/50">
        Underline with Opacity
      </h1>
    </div>
  );
}

States and Responsiveness

Hover and Focus States

Tailwind makes it simple to define decoration colors that change dynamically when the user interacts with your UI, such as hovering over or focusing on elements.

Here’s how you can implement hover-based decoration colors:

This is a live editor. Play around with it!
export default function HoverDecorationColors() {
  return (
    <div
      className="h-screen w-screen flex items-center justify-center bg-white"
    >
      <p className="text-lg font-semibold underline decoration-gray-400 hover:decoration-yellow-600">
        Hover to change color!
      </p>
    </div>
  );
}

Breakdown:

  • decoration-gray-400 sets the initial text decoration color.
  • hover:decoration-yellow-600 applies the yellow decoration color during hover states.

Adding state-based decoration colors improves user engagement and gives users real-time feedback through visual cues.

Breakpoint Modifiers

Responsive design requires adaptive styling based on screen size. With Tailwind, you can apply decoration colors conditionally using breakpoint prefixes.

This is a live editor. Play around with it!
export default function ResponsiveDecorationColor() {
  return (
    <div
      className="h-screen w-screen flex flex-col items-center justify-center bg-gray-100 space-y-4"
    >
      <p className="text-lg underline sm:decoration-green-500 md:decoration-blue-500 lg:decoration-red-500">
        Small Viewports: Green
      </p>
      <p className="text-lg underline sm:decoration-green-500 md:decoration-blue-500 lg:decoration-red-500">
        Medium Viewports: Blue
      </p>
      <p className="text-lg underline sm:decoration-green-500 md:decoration-blue-500 lg:decoration-red-500">
        Large Viewports: Red
      </p>
    </div>
  );
}

CSS logic (automatic):

  • For sm:— Applies the decoration color only if the sm breakpoint matches.
  • For md: or lg:— Changes decoration colors based on progressive breakpoints above sm.

Tailwind’s responsive utilities ensure that your styles adapt perfectly to user devices.

Custom Text Decoration Color

Extending the Theme

Although Tailwind provides a comprehensive default palette, there might be cases where you need highly specific theme configurations. Using the theme.extend key in your configuration file, you can add custom decoration colors.

Update your tailwind.config.js:

Now, you’ll have team-specific decoration colors that you can apply like this:

This is a live editor. Play around with it!
import tailwindConfig from "./tailwind.config.js";
tailwind.config = tailwindConfig;

export default function CustomColors() {
  return (
    <div
      className="h-screen w-screen flex items-center justify-center bg-gray-50"
    >
      <p className="underline decoration-brand">
        Custom Decoration Color Applied
      </p>
    </div>
  );
}

By extending the theme configuration, you seamlessly integrate your brand’s color system into Tailwind CSS utilities.

Using Arbitrary Values

For scenarios where predefined classes or configurations don’t meet your needs, Tailwind CSS supports CSS variables or custom values directly with square brackets ([]).

This is a live editor. Play around with it!
export default function ArbitraryDecorationColor() {
  return (
    <div
      className="h-screen w-screen flex items-center justify-center bg-gray-200"
    >
      <h1 className="font-bold text-2xl underline decoration-[rgba(34,197,94,0.9)]">
        Using Arbitrary RGBA Colors
      </h1>
    </div>
  );
}

Why it’s effective:

  • decoration-[rgba(34,197,94,0.9)]: Custom RGBA value sets a distinct green underline.
  • You gain full freedom to define custom, unique colors suitable for your project.

Unlike the limited color palette in most frameworks, Tailwind empowers you to work outside conventions when necessary.

Real World Examples

This example shows a navigation menu where the active link has a custom underline color.

This is a live editor. Play around with it!
export default function NavigationMenu() {
  const menuItems = [
    { id: 1, name: 'Dashboard', path: '/dashboard', isActive: true },
    { id: 2, name: 'Products', path: '/products', isActive: false },
    { id: 3, name: 'Customers', path: '/customers', isActive: false },
    { id: 4, name: 'Analytics', path: '/analytics', isActive: false },
    { id: 5, name: 'Settings', path: '/settings', isActive: false },
    { id: 6, name: 'Support', path: '/support', isActive: false }
  ];

  return (
    <nav className="bg-gray-800 p-4">
      <ul className="flex space-x-6">
        {menuItems.map((item) => (
          <li key={item.id}>
            <a
              href={item.path}
              className={`text-white hover:text-blue-300 ${
                item.isActive
                  ? 'underline decoration-blue-400 decoration-2'
                  : ''
              }`}
            >
              {item.name}
            </a>
          </li>
        ))}
      </ul>
    </nav>
  );
}

Product Price Comparison Table

A table showing product prices with strikethrough styling on discounted prices.

This is a live editor. Play around with it!
export default function PriceComparisonTable() {
  const products = [
    { id: 1, name: 'Premium Laptop', originalPrice: 1299, currentPrice: 999 },
    { id: 2, name: 'Wireless Headphones', originalPrice: 199, currentPrice: 149 },
    { id: 3, name: 'Smart Watch', originalPrice: 299, currentPrice: 249 },
    { id: 4, name: 'Gaming Console', originalPrice: 499, currentPrice: 449 },
    { id: 5, name: 'Tablet Pro', originalPrice: 799, currentPrice: 649 },
    { id: 6, name: 'Camera Kit', originalPrice: 899, currentPrice: 749 }
  ];

  return (
    <div className="max-w-2xl mx-auto">
      <table className="w-full">
        <thead className="bg-gray-100">
          <tr>
            <th className="p-4 text-left">Product</th>
            <th className="p-4 text-left">Original Price</th>
            <th className="p-4 text-left">Current Price</th>
          </tr>
        </thead>
        <tbody>
          {products.map((product) => (
            <tr key={product.id} className="border-b">
              <td className="p-4">{product.name}</td>
              <td className="p-4">
                <span className="line-through decoration-red-500 decoration-2">
                  ${product.originalPrice}
                </span>
              </td>
              <td className="p-4 text-green-600">${product.currentPrice}</td>
            </tr>
          ))}
        </tbody>
      </table>
    </div>
  );
}

A grid of blog posts with decorated titles on hover.

This is a live editor. Play around with it!
export default function BlogGrid() {
  const blogPosts = [
    {
      id: 1,
      title: 'Getting Started with Web Development',
      excerpt: 'Learn the basics of web development...',
      image: 'https://images.unsplash.com/photo-1461749280684-dccba630e2f6',
      alt: 'Coding on laptop'
    },
    {
      id: 2,
      title: 'Advanced CSS Techniques',
      excerpt: 'Master modern CSS concepts...',
      image: 'https://images.unsplash.com/photo-1498050108023-c5249f4df085',
      alt: 'CSS code'
    },
    {
      id: 3,
      title: 'JavaScript Best Practices',
      excerpt: 'Write better JavaScript code...',
      image: 'https://images.unsplash.com/photo-1579468118864-1b9ea3c0db4a',
      alt: 'JavaScript code'
    },
    {
      id: 4,
      title: 'Responsive Design Principles',
      excerpt: 'Create mobile-friendly websites...',
      image: 'https://images.unsplash.com/photo-1522542550221-31fd19575a2d',
      alt: 'Responsive design'
    },
    {
      id: 5,
      title: 'Web Performance Optimization',
      excerpt: 'Speed up your website...',
      image: 'https://images.unsplash.com/photo-1460925895917-afdab827c52f',
      alt: 'Website performance'
    },
    {
      id: 6,
      title: 'Modern Frontend Frameworks',
      excerpt: 'Compare popular frameworks...',
      image: 'https://images.unsplash.com/photo-1555066931-4365d14bab8c',
      alt: 'Frontend frameworks'
    }
  ];

  return (
    <div className="grid gap-6 p-6">
      {blogPosts.map((post) => (
        <article key={post.id} className="bg-white rounded-lg shadow-md">
          <img
            src={post.image}
            alt={post.alt}
            className="w-full h-48 object-cover rounded-t-lg"
          />
          <div className="p-4">
            <h3 className="text-xl font-bold hover:underline hover:decoration-indigo-500 hover:decoration-2">
              {post.title}
            </h3>
            <p className="mt-2 text-gray-600">{post.excerpt}</p>
          </div>
        </article>
      ))}
    </div>
  );
}

Task List with Status Indicators

A task list showing completed and pending items with different text decorations.

This is a live editor. Play around with it!
export default function TaskList() {
  const tasks = [
    { id: 1, title: 'Update website content', completed: true, priority: 'High' },
    { id: 2, title: 'Review pull requests', completed: false, priority: 'Medium' },
    { id: 3, title: 'Fix navigation bug', completed: true, priority: 'High' },
    { id: 4, title: 'Write documentation', completed: false, priority: 'Low' },
    { id: 5, title: 'Deploy new features', completed: false, priority: 'High' },
    { id: 6, title: 'Team meeting', completed: true, priority: 'Medium' }
  ];

  return (
    <div className="max-w-lg mx-auto p-6">
      <h2 className="text-2xl font-bold mb-4">Task List</h2>
      <ul className="space-y-3">
        {tasks.map((task) => (
          <li
            key={task.id}
            className="flex items-center justify-between p-3 bg-white rounded-lg shadow"
          >
            <span
              className={`${
                task.completed
                  ? 'line-through decoration-green-500 decoration-2 text-gray-500'
                  : ''
              }`}
            >
              {task.title}
            </span>
            <span
              className={`px-2 py-1 rounded text-sm ${
                task.priority === 'High'
                  ? 'bg-red-100 text-red-800'
                  : task.priority === 'Medium'
                  ? 'bg-yellow-100 text-yellow-800'
                  : 'bg-green-100 text-green-800'
              }`}
            >
              {task.priority}
            </span>
          </li>
        ))}
      </ul>
    </div>
  );
}

Event Calendar with Highlighted Dates

A calendar showing events with decorated date indicators.

This is a live editor. Play around with it!
export default function EventCalendar() {
  const events = [
    { id: 1, date: '2023-12-01', title: 'Team Building', type: 'social' },
    { id: 2, date: '2023-12-05', title: 'Client Meeting', type: 'business' },
    { id: 3, date: '2023-12-10', title: 'Project Deadline', type: 'deadline' },
    { id: 4, date: '2023-12-15', title: 'Training Session', type: 'education' },
    { id: 5, date: '2023-12-20', title: 'Product Launch', type: 'business' },
    { id: 6, date: '2023-12-25', title: 'Holiday Party', type: 'social' }
  ];

  return (
    <div className="max-w-2xl mx-auto p-6">
      <div className="grid grid-cols-2 gap-2">
        {events.map((event) => (
          <div
            key={event.id}
            className="p-3 border rounded-lg hover:bg-gray-50"
          >
            <div className="text-sm text-gray-500">{event.date}</div>
            <div
              className={`mt-1 font-medium ${
                event.type === 'business'
                  ? 'underline decoration-blue-500 decoration-2'
                  : event.type === 'deadline'
                  ? 'underline decoration-red-500 decoration-2'
                  : event.type === 'social'
                  ? 'underline decoration-green-500 decoration-2'
                  : 'underline decoration-purple-500 decoration-2'
              }`}
            >
              {event.title}
            </div>
          </div>
        ))}
      </div>
    </div>
  );
}

Customization Examples

This example demonstrates how to create a custom navigation menu with branded underline colors that change on hover.

This is a live editor. Play around with it!
import tailwindConfig from "./tailwind.config.js";
tailwind.config = tailwindConfig;

// App.js
export default function BrandNavigation() {
  return (
    <nav className="bg-gray-50 p-6 rounded-lg shadow-sm">
      <ul className="flex space-x-8 justify-center text-lg">
        {['Home', 'Products', 'Services', 'Contact'].map((item) => (
          <li key={item}>
            <a
              href="#"
              className="text-gray-800 underline decoration-brand-blue hover:decoration-brand-hover active:decoration-brand-active decoration-2 transition-all duration-300"
            >
              {item}
            </a>
          </li>
        ))}
      </ul>
    </nav>
  )
}

Article Title with Gradient Decoration

This example shows how to create an article title with a gradient underline decoration that responds to dark mode.

This is a live editor. Play around with it!
import tailwindConfig from "./tailwind.config.js";
tailwind.config = tailwindConfig;

// App.js
export default function ArticleHeader() {
  return (
    <div className="max-w-2xl mx-auto p-8">
      <h1 className="text-4xl font-bold mb-4 inline-block">
        <span className="underline decoration-4 decoration-gradient-start dark:decoration-dark-gradient-start">
          The Future of Web Development
        </span>
      </h1>
      <p className="text-gray-600 dark:text-gray-300 mt-4">
        Published on August 15, 2023
      </p>
      <img
        src="https://images.unsplash.com/photo-1498050108023-c5249f4df085"
        alt="Web Development"
        className="w-full h-64 object-cover rounded-lg mt-6"
      />
    </div>
  )
}

Interactive Product Card with Animated Decoration

This example creates a product card with an animated text decoration color that changes based on user interaction.

This is a live editor. Play around with it!
import tailwindConfig from "./tailwind.config.js";
tailwind.config = tailwindConfig;

// App.js
export default function ProductCard() {
  return (
    <div className="max-w-sm mx-auto bg-white rounded-xl shadow-md overflow-hidden">
      <div className="p-6">
        <img
          src="https://images.unsplash.com/photo-1542291026-7eec264c27ff"
          alt="Product"
          className="w-full h-48 object-cover rounded-lg"
        />
        <div className="mt-4">
          <h2 className="text-2xl font-semibold group">
            <span className="underline decoration-2 decoration-product-primary 
              hover:decoration-product-secondary active:decoration-product-tertiary
              transition-all duration-300">
              Limited Edition Sneakers
            </span>
          </h2>
          <p className="mt-2 text-gray-600">
            $199.99
          </p>
          <button className="mt-4 bg-black text-white px-6 py-2 rounded-full
            hover:bg-gray-800 transition-colors duration-300">
            Add to Cart
          </button>
        </div>
      </div>
    </div>
  )
}

Best Practices

Maintain Design Consistency

When applying Text Decoration Color in Tailwind CSS, ensure your design maintains a consistent aesthetic across all components. By choosing colors that align with your project's design system or brand guidelines, you avoid visual inconsistencies. For instance, when using underline colors for links, ensure they match the color palette of the surrounding elements to create a harmonious design.

To maintain consistency, use Tailwind’s built-in color palette or extend it to add custom brand colors in your tailwind.config.js file. Avoid mixing too many decoration colors within the same component hierarchy, as it might overwhelm users. Purposefully selected text decoration colors elevate readability and strengthen the cohesion of the visual hierarchy.

This is a live editor. Play around with it!
import tailwindConfig from "./tailwind.config.js";
tailwind.config = tailwindConfig;

export default function ConsistentDesign() {
  return (
    <div className="flex flex-col items-center p-6 space-y-4">
      <a
        href="#"
        className="underline decoration-primary decoration-2 hover:decoration-secondary text-lg font-semibold text-gray-800"
      >
        Discover More
      </a>
      <p className="text-gray-600 underline decoration-secondary decoration-dotted">
        Explore the consistent use of decoration styles here.
      </p>
    </div>
  );
}

Leverage Utility Combinations

Tailwind CSS allows you to combine utilities to create intricate designs without writing custom CSS. For Text Decoration Color, you can pair utilities like decoration-[color], decoration-opacity, and decoration thickness utilities such as decoration-4. This is particularly useful when you want customizations to accentuate specific parts of your layout.

For instance, a customizable card element with dynamic shadow, border, and underline can be created by judiciously combining Tailwind utilities. This approach prioritizes clarity, keeping your classes concise while achieving versatile designs.

This is a live editor. Play around with it!
export default function UtilityCombinations() {
  return (
    <div className="p-4 max-w-md mx-auto">
      <div className="bg-gray-50 border-t-4 border-primary shadow-lg rounded-lg p-6">
        <h3 className="text-xl font-semibold underline decoration-primary decoration-4">
          Build Intricate Designs Effortlessly
        </h3>
        <p className="text-gray-600 mt-3 underline decoration-secondary decoration-wavy">
          Tailwind's utilities can be combined for quick prototyping without compromising design quality.
        </p>
      </div>
    </div>
  );
}

When combining utilities, always ensure that the resulting design remains legible, accessible, and visually pleasing.

Accessibility Considerations

Enhance Readability and Navigability

Text Decoration Color plays a functional role in improving both readability and navigability of your UI. Underlines, when appropriately styled, help users distinguish links and emphasized text effortlessly. It’s essential, however, to pair your decoration color with legible font sizes and sufficient color contrast to guarantee clarity for all users.

For instance, texts with light decoration colors on dark backgrounds improve readability. Adding increased underline thickness ensures the decoration is noticeable even for users with low visual acuity.

This is a live editor. Play around with it!
export default function ReadableDecorations() {
  return (
    <div className="p-6 space-y-4 bg-gray-900 text-white h-screen">
      <a
        href="#"
        className="underline text-lg decoration-yellow-400 decoration-4"
      >
        Go to Highlights Section
      </a>
      <p className="leading-relaxed underline decoration-pink-400">
        Proper text decoration amplifies discoverability of interactive elements while ensuring visual clarity.
      </p>
    </div>
  );
}

Adhering to accessibility practices makes your interface inclusive, benefiting every user.

Focus on High Contrast

Ensuring high contrast in Text Decoration Color is vital for users with varying levels of color vision deficiency. A contrast ratio of at least 4.5:1 is recommended for normal-sized text, as per the Web Content Accessibility Guidelines (WCAG). Tailwind’s customizable color palette allows adjustments to achieve these standards reliably.

Debugging Common Issues

Resolve Common Problems

Common issues with Text Decoration Color in Tailwind CSS often stem from conflicting utility classes or insufficient specificity. If you notice overlapping decorations or incorrect coloring, inspect the applied classes using browser DevTools to understand which class is overriding another.

Debugging such issues includes verifying Tailwind group orders in your configuration. Avoid applying unnecessary decoration utilities to the same element as that can introduce visual ambiguity.