Quick reference

Class
Properties
text-xsfont-size: 0.75rem; /* 12px */ line-height: 1rem; /* 16px */
text-smfont-size: 0.875rem; /* 14px */ line-height: 1.25rem; /* 20px */
text-basefont-size: 1rem; /* 16px */ line-height: 1.5rem; /* 24px */
text-lgfont-size: 1.125rem; /* 18px */ line-height: 1.75rem; /* 28px */
text-xlfont-size: 1.25rem; /* 20px */ line-height: 1.75rem; /* 28px */
text-2xlfont-size: 1.5rem; /* 24px */ line-height: 2rem; /* 32px */
text-3xlfont-size: 1.875rem; /* 30px */ line-height: 2.25rem; /* 36px */
text-4xlfont-size: 2.25rem; /* 36px */ line-height: 2.5rem; /* 40px */
text-5xlfont-size: 3rem; /* 48px */ line-height: 1;
text-6xlfont-size: 3.75rem; /* 60px */ line-height: 1;
text-7xlfont-size: 4.5rem; /* 72px */ line-height: 1;
text-8xlfont-size: 6rem; /* 96px */ line-height: 1;
text-9xlfont-size: 8rem; /* 128px */ line-height: 1;

Basic usage

Setting the font size

Control the font size of an element using the text-{size} utilities.

text-sm

The quick brown fox jumps over the lazy dog.

text-base

The quick brown fox jumps over the lazy dog.

text-lg

The quick brown fox jumps over the lazy dog.

text-xl

The quick brown fox jumps over the lazy dog.

text-2xl

The quick brown fox jumps over the lazy dog.

<p class="text-sm ...">The quick brown fox ...</p>
<p class="text-base ...">The quick brown fox ...</p>
<p class="text-lg ...">The quick brown fox ...</p>
<p class="text-xl ...">The quick brown fox ...</p>
<p class="text-2xl ...">The quick brown fox ...</p>

Applying conditionally

Hover, focus, and other states

Tailwind lets you conditionally apply utility classes in different states using variant modifiers. For example, use hover:text-base to only apply the text-base utility on hover.

<p class="text-sm hover:text-base">
  <!-- ... -->
</p>

For a complete list of all available state modifiers, check out the Hover, Focus, & Other States documentation.

Breakpoints and media queries

You can also use variant modifiers to target media queries like responsive breakpoints, dark mode, prefers-reduced-motion, and more. For example, use md:text-base to apply the text-base utility at only medium screen sizes and above.

<p class="text-sm md:text-base">
  <!-- ... -->
</p>

To learn more, check out the documentation on Responsive Design, Dark Mode and other media query modifiers.


Using custom values

Customizing your theme

By default, Tailwind provides 10 font-size utilities. You change, add, or remove these by editing the theme.fontSize section of your Tailwind config.

tailwind.config.js
module.exports = {
  theme: {
    fontSize: {
      'xs': '.75rem',
      'sm': '.875rem',
      'tiny': '.875rem',
      'base': '1rem',
      'lg': '1.125rem',
      'xl': '1.25rem',
      '2xl': '1.5rem',
      '3xl': '1.875rem',
      '4xl': '2.25rem',
      '5xl': '3rem',
      '6xl': '4rem',
      '7xl': '5rem',
    }
  }
}

Learn more about customizing the default theme in the theme customization documentation.

Providing a default line-height

You can provide a default line-height for each of your font-sizes using a tuple of the form [fontSize, lineHeight] in your tailwind.config.js file.

tailwind.config.js
module.exports = {
  theme: {
    fontSize: {
      sm: ['14px', '20px'],
      base: ['16px', '24px'],
      lg: ['20px', '28px'],
      xl: ['24px', '32px'],
    }
  }
}

You can also specify a default line-height using object syntax:

tailwind.config.js
module.exports = {
  theme: {
    fontSize: {
      sm: ['14px', {
        lineHeight: '20px',
      }],
    }
  }
}

We already provide default line heights for each .text-{size} class.

Providing a default letter-spacing

If you also want to provide a default letter-spacing value for a font size, you can do so using a tuple of the form [fontSize, { letterSpacing, lineHeight }] in your tailwind.config.js file.

tailwind.config.js
module.exports = {
  theme: {
    fontSize: {
      '2xl': ['24px', {
        letterSpacing: '-0.01em',
      }],
      // Or with a default line-height as well
      '3xl': ['32px', {
        letterSpacing: '-0.02em',
        lineHeight: '40px',
      }],
    }
  }
}

Arbitrary values

If you need to use a one-off font-size value that doesn’t make sense to include in your theme, use square brackets to generate a property on the fly using any arbitrary value.

<p class="text-[14px]">
  <!-- ... -->
</p>

Learn more about arbitrary value support in the arbitrary values documentation.