Sizing

Tailwind CSS w-auto Class

The w-auto utility class generates the following CSS when applied to an element.

CSS Output

CSS
.w-auto {
  width: auto;
}

Variants

Use these variant prefixes to apply w-auto conditionally:

responsive:w-auto

Use It

HTML
<button class="w-auto px-4 py-2 bg-blue-500 text-white rounded">
  Width based on content
</button>

Understanding w-auto

The Tailwind CSS w-auto utility applies width: auto; to an element when added to its class attribute. It lets the browser calculate the element's width based on its content and context. This is the default width for most elements and resets explicit width values.

This utility is part of Tailwind's Sizing module, designed for defining width, height, and min/max constraints that control how elements occupy space. In Tailwind's utility-first workflow, you add w-auto directly to your HTML elements rather than writing custom CSS. This approach accelerates development and keeps styles co-located with your markup, making it easy to see exactly how each element is styled at a glance.

Common responsive variants include sm:w-auto, md:w-auto, lg:w-auto, and xl:w-auto, allowing different behavior at each breakpoint. State variants like hover:w-auto and focus:w-auto enable interactive styling without any JavaScript. You can also combine multiple variants for fine-grained control over when the utility applies.

This class works well alongside `w-full`, `w-screen`, `w-1-2`, `h-auto` to build complete, production-ready interfaces. Tailwind's tree-shaking ensures only utilities you actually use appear in your final CSS bundle, keeping file sizes minimal. Browser support for the underlying CSS is excellent across Chrome, Firefox, Safari, and Edge.

Related Classes

Explore More Tailwind Classes

Browse our complete reference of 321 Tailwind CSS utility classes with CSS output, variants, and examples.