Utilidades de anchura
Establezca anchuras fijas con w-4, w-64, etc., utilice anchuras fraccionarias como w-1/2 y amplíe al máximo con w-full y w-screen.
Utilidades de anchura es una lección gratuita de Tailwind CSS Academy en CoddyKit. Esta es la lección 1 de 4. Puedes leer la lección completa abajo gratuitamente — luego la practicas en el navegador con un editor de código integrado y un tutor de IA 24/7. Forma parte de la ruta de aprendizaje de Tailwind CSS Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Tailwind CSS Academy incluye 4 lecciones en total.
Partes de esta lección aún no han sido traducidas y se muestran en inglés.
Controlling Width in Tailwind
Setting element widths is one of the most common layout tasks in CSS. Tailwind provides the w-* family of utilities that cover fixed sizes, fractional sizes, percentage-based sizes, and viewport-relative sizes. Instead of memorizing pixel values, you work with Tailwind's consistent spacing scale and semantic keywords that map to well-designed CSS values.
<!-- Width examples side by side -->
<div class="space-y-2">
<div class="w-32 bg-blue-100 p-2">w-32 (128px)</div>
<div class="w-1/2 bg-blue-200 p-2">w-1/2 (50%)</div>
<div class="w-full bg-blue-300 p-2">w-full (100%)</div>
</div>Fixed Width With the Spacing Scale
Fixed widths follow Tailwind's spacing scale where each unit equals 4px (0.25rem). So w-4 is 16px, w-16 is 64px, and w-64 is 256px. The scale goes up to w-96 (384px). These values are perfect for icons, avatars, sidebars, and any element with a known, fixed size that should not change with viewport width.
<!-- Fixed-size avatar and sidebar examples -->
<div class="flex gap-4 items-center">
<!-- Avatar: 12 x 12 = 48px -->
<div class="w-12 h-12 rounded-full bg-indigo-400 flex items-center justify-center text-white font-bold">
JD
</div>
<!-- Sidebar: 64 = 256px -->
<div class="w-64 bg-gray-100 p-4 rounded">
Sidebar panel (256px)
</div>
</div>Fractional Widths
Fractional width utilities express width as a fraction of the parent container. Tailwind supports halves (w-1/2), thirds (w-1/3, w-2/3), quarters (w-1/4 through w-3/4), fifths, and sixths. These compile to percentage values — for example, w-1/3 becomes width: 33.333333% — making them ideal for side-by-side column layouts.
<!-- Two-thirds / one-third split layout -->
<div class="flex gap-4">
<div class="w-2/3 bg-emerald-100 p-4 rounded">Main (2/3 wide)</div>
<div class="w-1/3 bg-emerald-200 p-4 rounded">Sidebar (1/3 wide)</div>
</div>w-full and w-screen
w-full sets width to 100% of the parent container, while w-screen sets width to 100vw (the viewport width). The difference matters when the parent is not the full viewport: w-full fills the parent, but w-screen always fills the entire browser window and may cause horizontal overflow if there is a scrollbar. Use w-screen for full-viewport overlays and w-full for everything else.
<!-- w-full fills the parent, regardless of parent width -->
<div class="w-1/2 bg-gray-100 p-4">
<button class="w-full bg-blue-500 text-white py-2 rounded">
Full-width button inside half-width parent
</button>
</div>
<!-- w-screen fills the entire viewport -->
<div class="w-screen bg-indigo-800 text-white py-3 text-center">
Full-viewport-width banner
</div>w-auto for Natural Width
w-auto lets the element take its natural or content-driven width. This is the browser default for most block elements, but you may need to apply it explicitly to override a wider width set at a different breakpoint. It is commonly used when switching from w-full on mobile back to auto sizing on desktop, for example in a button that should only be as wide as its text.
<!-- Full-width on mobile, natural width on desktop -->
<button class="w-full md:w-auto bg-purple-500 text-white px-6 py-3 rounded">
Get Started
</button>w-fit, w-min, and w-max
Three modern width keywords help elements size themselves based on content: w-fit makes an element as wide as its content (like fit-content), w-min sets width to the minimum content size (collapses to the longest unbreakable word), and w-max expands to the maximum content width without wrapping. These are useful for tags, pills, tooltips, and inline labels.
<!-- Tags that size to their text content -->
<div class="flex gap-2">
<span class="w-fit bg-blue-100 text-blue-800 px-3 py-1 rounded-full text-sm">
Design
</span>
<span class="w-fit bg-green-100 text-green-800 px-3 py-1 rounded-full text-sm">
Development
</span>
<span class="w-fit bg-purple-100 text-purple-800 px-3 py-1 rounded-full text-sm">
Marketing
</span>
</div>Arbitrary Width Values
When the built-in scale does not cover your exact need, use the arbitrary value syntax: w-[347px] or w-[calc(100%-2rem)]. This compiles to exactly that CSS value in the JIT engine. While convenient, arbitrary values bypass the design system, so use them sparingly — first check if a fractional or fixed scale value achieves the same visual result.
<!-- One-off width for a specific UI element -->
<div class="w-[280px] bg-amber-100 p-4 rounded">
Tooltip or popover of exact width
</div>
<!-- Calc inside brackets -->
<div class="w-[calc(100%-3rem)] bg-amber-200 p-4 rounded">
Full width minus 3rem padding
</div>Responsive Width Changes
Combining responsive prefixes with width utilities is one of the most powerful patterns in Tailwind. A common pattern is w-full sm:w-1/2 lg:w-1/3: full width on mobile, half on small screens, and one-third on large screens. This creates a responsive card layout from a single set of utility classes without any media query CSS.
<!-- Responsive-width cards in a flex wrap container -->
<div class="flex flex-wrap gap-4">
<div class="w-full sm:w-1/2 lg:w-1/3 bg-rose-100 p-6 rounded">
Card A
</div>
<div class="w-full sm:w-1/2 lg:w-1/3 bg-rose-100 p-6 rounded">
Card B
</div>
<div class="w-full sm:w-1/2 lg:w-1/3 bg-rose-100 p-6 rounded">
Card C
</div>
</div>max-w-* for Readable Content
While w-* sets an exact width, max-w-* sets an upper limit. The most important max-width utility is max-w-prose, which limits text to around 65 characters per line — the sweet spot for readability identified by typography researchers. max-w-sm through max-w-7xl give you semantic container widths matching common design breakpoints.
<!-- Readable article column with max-width -->
<article class="max-w-prose mx-auto px-4">
<h1 class="text-2xl font-bold mb-4">Article Title</h1>
<p class="text-gray-700 leading-relaxed">
This paragraph stays at a comfortable reading width regardless
of the viewport size. max-w-prose limits it to about 65 characters
per line for optimal readability.
</p>
</article>Width in Flex Containers
Inside a flex container, w-* classes interact with flex-grow and flex-shrink. A child with w-full will try to be 100% wide but the flex container can shrink it. To prevent shrinking, add shrink-0 alongside the width class. This pattern is commonly used for icons and avatars that should never squish, while the sibling text content takes the remaining space.
<!-- Icon stays fixed width, text takes remaining space -->
<div class="flex items-center gap-3 p-4 border rounded">
<!-- Icon: fixed 40px, never shrinks -->
<div class="w-10 h-10 shrink-0 bg-blue-500 rounded-full flex items-center justify-center">
<span class="text-white font-bold">AI</span>
</div>
<!-- Text: takes all remaining width -->
<div class="min-w-0">
<p class="font-semibold truncate">Long title that might overflow</p>
<p class="text-sm text-gray-500">Subtitle text</p>
</div>
</div>Centering Fixed-Width Elements
A classic layout pattern is a fixed-width container centered on the page. The combination of a max-width utility and mx-auto (auto horizontal margins) achieves this cleanly. Wrap your page content in max-w-5xl mx-auto px-4 to create a centered, readable column with comfortable side padding on all screen sizes.
<!-- Classic centered page layout -->
<div class="max-w-5xl mx-auto px-4 py-8">
<header class="mb-6">
<h1 class="text-3xl font-bold">Page Title</h1>
</header>
<div class="grid grid-cols-1 md:grid-cols-3 gap-6">
<div class="bg-gray-100 p-4 rounded">Column 1</div>
<div class="bg-gray-100 p-4 rounded">Column 2</div>
<div class="bg-gray-100 p-4 rounded">Column 3</div>
</div>
</div>Quick Check
Test your understanding of Tailwind CSS Mastery concepts from this lesson.
Lesson Recap
In this lesson you learned: w-* fixed utilities follow the 4px spacing scale up to w-96, fractional utilities like w-1/2 set percentage widths relative to the parent, and w-full, w-screen, w-fit, w-min, and w-max cover semantic sizing needs. Next up we explore height utilities that complement width controls.
Preguntas frecuentes
¿La lección «Utilidades de anchura» es gratis?
Sí — el texto completo de «Utilidades de anchura» es gratis para leer aquí en la web. Para practicarla de forma interactiva (editor de código integrado y tutor de IA 24/7) y desbloquear el resto del curso de Tailwind CSS Academy, actualiza a CoddyKit PRO. El curso de Tailwind CSS Academy incluye 4 lecciones en total.
¿Qué aprenderé en «Utilidades de anchura»?
Establezca anchuras fijas con w-4, w-64, etc., utilice anchuras fraccionarias como w-1/2 y amplíe al máximo con w-full y w-screen. Practicas Tailwind CSS Academy con código real que ejecutas directamente en el navegador, y un tutor de IA 24/7 responde tus preguntas mientras trabajas en la lección.
¿Necesito experiencia previa para empezar Tailwind CSS Academy?
No se requiere experiencia previa. Tailwind CSS Academy en CoddyKit está estructurado para principiantes hasta estudiantes avanzados, así que puedes empezar aquí o desde el inicio y avanzar a tu ritmo. Esta es la lección 1 de 4.
¿Cuánto tiempo toma la lección «Utilidades de anchura»?
La mayoría de las lecciones de CoddyKit toman alrededor de 5–10 minutos. Cada una es compacta e interactiva, así que avanzas constantemente y retomas exactamente por donde dejaste en la web y la app.
¿Puedo escribir y ejecutar código en esta lección de Tailwind CSS Academy?
Sí. Cada lección de Tailwind CSS Academy incluye un editor de código integrado, así que escribes y ejecutas código real directamente en tu navegador y obtienes retroalimentación instantánea de IA — sin configuración local necesaria.
Todas las lecciones de este curso
- Utilidades de anchura
- Utilidades de altura
- Restricciones mínimas y máximas
- Relación de aspecto