Typography

Text Underline Offset

Utilities for controlling the offset of a text underline.

Quick reference

Class
Properties
underline-offset-autotext-underline-offset: auto;
underline-offset-0text-underline-offset: 0px;
underline-offset-1text-underline-offset: 1px;
underline-offset-2text-underline-offset: 2px;
underline-offset-4text-underline-offset: 4px;
underline-offset-8text-underline-offset: 8px;

Basic usage

Setting the underline offset

Use the underline-offset-{width} utilities to change the offset of a text underline.

Text Underline Offset - 图1

  1. <p class="underline underline-offset-1 ...">The quick brown fox...</p>
  2. <p class="underline underline-offset-2 ...">The quick brown fox...</p>
  3. <p class="underline underline-offset-4 ...">The quick brown fox...</p>
  4. <p class="underline underline-offset-8 ...">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:underline-offset-4 to only apply the underline-offset-4 utility on hover.

  1. <p class="underline hover:underline-offset-4">
  2. <!-- ... -->
  3. </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:underline-offset-4 to apply the underline-offset-4 utility at only medium screen sizes and above.

  1. <p class="underline md:underline-offset-4">
  2. <!-- ... -->
  3. </p>

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


Using custom values

Customizing your theme

You can customize the underline-offset-{width} utilities by editing theme.textUnderlineOffset or theme.extend.textUnderlineOffset in your tailwind.config.js file.

tailwind.config.js

  1. module.exports = {
  2. theme: {
  3. extend: {
  4. textUnderlineOffset: {
  5. 3: '3px',
  6. }
  7. }
  8. }
  9. }

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

Arbitrary values

If you need to use a one-off text-underline-offset 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.

  1. <p class="underline-offset-[3px]">
  2. <!-- ... -->
  3. </p>

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