How to Use Tailwind CSS for Text Decoration

Tailwind CSS is a utility-first CSS framework that provides a vast array of classes to style your HTML elements with ease. Text decoration is a common style attribute that can be applied to text elements to make them stand out or convey a specific meaning. In this article, we’ll explore how to use Tailwind CSS to apply text decoration to your web projects.

Understanding Text Decoration in CSS

Before diving into Tailwind’s text decoration utilities, let’s understand what text decoration in CSS entails. Text decoration is a property that allows you to add decorative lines to text, such as underlines, overlines, line-throughs, and even custom decorations using the text-decoration-style and text-decoration-color properties.

Getting Started with Tailwind CSS

To use Tailwind CSS for text decoration, you first need to ensure that Tailwind is installed in your project. You can include Tailwind by using a CDN or by installing it via npm or yarn. For detailed installation instructions, visit the official Tailwind CSS installation guide.

Applying Basic Text Decoration with Tailwind CSS

Tailwind provides several utility classes for applying text decoration. Here’s how to use them:

Underline Text

To underline text, use the underline class:

<p class="underline">This text is underlined.</p>

Remove Text Decoration

To remove text decoration that may be inherited from parent elements, use the no-underline class:

<p class="no-underline">This text has no decoration.</p>

Line-Through Text

To add a line through your text, use the line-through class:

<p class="line-through">This text has a line through it.</p>

Customizing Text Decoration

Tailwind CSS also allows for customization of text decoration styles. However, these are not included in the default configuration. You’ll need to extend Tailwind’s theme to include custom text decoration utilities.

Adding Custom Text Decoration Styles

In your tailwind.config.js file, you can extend the theme to create custom text decoration styles:

module.exports = {
  theme: {
    extend: {
      textDecorationStyle: {
        'wavy': 'wavy',
        'dotted': 'dotted',
        'dashed': 'dashed',
        'double': 'double',
      textDecorationColor: {
        'blue': '#3490dc',
        'red': '#e3342f',
  variants: {
    // Enable variants for text decoration style and color if needed
    textDecorationStyle: ['responsive', 'hover'],
    textDecorationColor: ['responsive', 'hover'],
  plugins: [],

After extending the theme, you can use the new utilities in your HTML:

<p class="underline decoration-wavy decoration-blue">This text has a wavy blue underline.</p>

Hover Effects

Tailwind allows you to apply text decoration on hover using the hover: prefix. Here’s an example:

<p class="no-underline hover:underline">Hover over me to see the underline.</p>

Responsive Text Decoration

Tailwind’s responsive design features enable you to apply text decoration differently at various breakpoints. Use the breakpoint prefixes like sm:, md:, lg:, and xl: before the text decoration class:

<p class="underline md:no-underline">Underlined on small screens, no underline on medium screens and up.</p>


Tailwind CSS makes it simple to apply and customize text decoration on your web pages. By using the provided utility classes and extending the framework with your custom styles, you can achieve the desired look for your text elements across various devices and states.

Remember that while Tailwind provides a robust set of utilities out of the box, the real power comes from its customization capabilities. Don’t hesitate to tailor your tailwind.config.js file to fit the unique needs of your project.

For more advanced usage and best practices, refer to the Tailwind CSS documentation on text decoration. With Tailwind CSS, the possibilities for styling are nearly limitless, so experiment and find the perfect text decorations to enhance your website’s design.


What do you think?