0Pricing
CSS Academy · Lección

container-type y container-name

Defina contenedores de consulta mediante container-type y asígneles nombres con container-name.

container-type y container-name es una lección gratuita de 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 CSS Academy, y tu progreso se sincroniza en la web y la app de CoddyKit. El curso de CSS Academy incluye 4 lecciones en total.

¿Qué son las container queries?

Las container queries permiten que CSS aplique estilos según el tamaño de un contenedor principal en lugar del viewport. Esto permite un diseño adaptable verdaderamente basado en componentes, donde un componente se adapta al lugar en el que se coloque.

El problema que resuelven las container queries

Con las media queries, un componente de tarjeta situado en una barra lateral de 300px no puede saber que es pequeño: solo sabe que el viewport es ancho. Las container queries permiten que el componente reaccione al tamaño de su propio contenedor, no al del viewport global.

container-type

Para consultar un contenedor, primero declárelo como contenedor consultable mediante container-type:

<div class="card-wrapper">This wrapper can now be queried for its own width via @container.</div>

Valores de container-type

Valores disponibles:

  • inline-size — habilita consultas sobre la dimensión en línea del contenedor (el ancho en una escritura horizontal)
  • size — habilita consultas sobre las dimensiones en línea y de bloque (ancho y alto)
  • normal — valor predeterminado; no permite consultas de tamaño, pero sí consultas de estilo

container-name

Asigne un nombre al contenedor para referenciarlo en las consultas. Esto es necesario cuando existen contenedores anidados y desea consultar un ancestro específico:

<div class="sidebar">Named container: "sidebar"</div>

Abreviatura container

La abreviatura container establece tanto el nombre como el tipo:

<div class="card-grid">Container named "card-grid", type inline-size.</div>

Por qué usar contenedores sin nombre

Aun puede consultar un contenedor sin nombre: la regla @container se dirigirá de forma predeterminada al ancestro contenedor más cercano. Los nombres solo son necesarios cuando desea omitir ancestros hasta llegar a uno específico.

Consideración de rendimiento

Cada elemento container-type obtiene su propio aislamiento del diseño. Esto significa que los cambios de tamaño dentro del contenedor no afectan a sus ancestros, lo que supone una ventaja de rendimiento. El navegador no necesita recalcular toda la página cuando cambia el contenedor.

Relación con la propiedad contain

Establecer container-type: inline-size configura implícitamente contain: inline-size layout style en el elemento. Esto impide que el tamaño del contenedor afecte a su propio diseño, algo necesario para que funcionen las consultas de tamaño.

Configuración de un ejemplo práctico

Una configuración completa de container query:

<div class="article-grid">
  <div class="card">Card 1</div>
  <div class="card">Card 2</div>
  <div class="card">Card 3</div>
</div>

Container queries frente a media queries

Utilice contenedores para: adaptación a nivel de componente, componentes reutilizables en distintos contextos de diseño y tarjetas o widgets en ubicaciones desconocidas. Utilice media queries para: cambios del diseño global, escalado de la tipografía y mostrar u ocultar secciones grandes.

Comprobación rápida

¿Qué valor de propiedad permite que un elemento sea consultable por su ancho mediante reglas @container?

Resumen

container-type: inline-size define un elemento como contenedor consultable por su ancho. Utilice container-name para asignar nombres a los contenedores y seleccionarlos de forma específica. La abreviatura container establece ambos valores. Las container queries resuelven el problema de los componentes situados en contextos desconocidos, que las media queries basadas en el viewport no pueden abordar.

Preguntas frecuentes

¿La lección «container-type y container-name» es gratis?

Sí — el texto completo de «container-type y container-name» 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 CSS Academy, actualiza a CoddyKit PRO. El curso de CSS Academy incluye 4 lecciones en total.

¿Qué aprenderé en «container-type y container-name»?

Defina contenedores de consulta mediante container-type y asígneles nombres con container-name. Practicas 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 CSS Academy?

No se requiere experiencia previa. 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 «container-type y container-name»?

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 CSS Academy?

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

  1. container-type y container-name
  2. Reglas @container y breakpoints
  3. Unidades de consulta de contenedor: cqw y cqh
  4. Container queries frente a media queries
← Volver a CSS Academy