0Pricing
Web Accessibility Academy · Lección

El patrón de pestañas: tablist, tab, tabpanel

Conecte los tres roles que necesita un conjunto de pestañas.

El patrón de pestañas: tablist, tab, tabpanel es una lección gratuita de Web Accessibility 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 Web Accessibility Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de Web Accessibility Academy incluye 4 lecciones en total.

Partes de esta lección aún no han sido traducidas y se muestran en inglés.

What a Tab Set Really Is

A tab set shows one panel at a time and lets users switch between them. To assistive tech it must look like one widget, not loose links.

Three Roles Work Together

The pattern relies on three ARIA roles: a tablist that holds the tabs, each tab, and the panel each tab reveals. Get all three right.

The Container Is a tablist

Wrap your row of tabs in an element with role="tablist". This tells screen readers the children inside are a related set of tabs.

<div role="tablist">...</div>

Each Tab Is a Button

Build each tab from a real button with role="tab". A button is focusable and clickable for free, so you avoid extra wiring.

<button role="tab">Profile</button>

The Panel Is a tabpanel

The content each tab shows gets role="tabpanel". This marks it as the region controlled by the currently selected tab.

<div role="tabpanel">Profile details</div>

Mark the Selected Tab

Set aria-selected="true" on the active tab and false on the rest. Screen readers announce which tab is currently chosen.

<button role="tab" aria-selected="true">Profile</button>

Link Tab to Its Panel

Point each tab at its panel with aria-controls, set to the panel id. Users learn which region the tab opens.

<button role="tab" aria-controls="p1">Profile</button>

Name the Panel From Its Tab

Give the panel an aria-labelledby that points back to its tab. Now the panel borrows the tab text as its accessible name.

<div role="tabpanel" aria-labelledby="tab1">...</div>

Hide the Inactive Panels

Only one panel should show at a time. Add the hidden attribute to the panels whose tab is not selected so they leave the page.

<div role="tabpanel" hidden>...</div>

Give the Tablist a Label

A tablist deserves an aria-label describing its purpose, like Account settings. Users hear what the whole set of tabs is for.

<div role="tablist" aria-label="Account settings">...</div>

How It All Sounds

Put together, a screen reader announces something like Profile, tab, selected, 1 of 3. That orientation is exactly what makes tabs usable.

Quick Check

You are wiring up the container that holds your row of tabs. Which role belongs on it?

Recap: The Tabs Pattern

You learned the tablist, tab, tabpanel trio. Mark the selected tab, link each tab to its panel, and hide the inactive ones.

Preguntas frecuentes

¿La lección «El patrón de pestañas: tablist, tab, tabpanel» es gratis?

Sí — el texto completo de «El patrón de pestañas: tablist, tab, tabpanel» 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 Web Accessibility Academy, actualiza a CoddyKit PRO. El curso de Web Accessibility Academy incluye 4 lecciones en total.

¿Qué aprenderé en «El patrón de pestañas: tablist, tab, tabpanel»?

Conecte los tres roles que necesita un conjunto de pestañas. Practicas Web Accessibility 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 Web Accessibility Academy?

No se requiere experiencia previa. Web Accessibility 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 «El patrón de pestañas: tablist, tab, tabpanel»?

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 Web Accessibility Academy?

Sí. Cada lección de Web Accessibility 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

  1. El patrón de pestañas: tablist, tab, tabpanel
  2. Navegación entre pestañas con las teclas de flecha
  3. Acordeones con button y aria-expanded
  4. Disclosure frente a pestañas: elija el adecuado
← Volver a Web Accessibility Academy