La Etiqueta COLGROUP

Permite aplicar estilos o atributos a grupos de columnas en una tabla HTML, evitando repetir configuraciones en cada celda.
La etiqueta <colgroup> permite aplicar estilos o atributos a grupos de columnas en una tabla HTML, evitando repetir configuraciones en cada celda. Es útil para definir anchos, fondos o bordes consistentes en columnas específicas.
Sintaxis básica
<table>
<colgroup>
<col> <!-- Define una columna -->
<col span="2"> <!-- Agrupa 2 columnas -->
</colgroup>
<!-- Filas y celdas -->
</table>
Casos de uso comunes
Definir anchos de columnas
<table>
<colgroup>
<col style="width: 20%">
<col style="width: 50%">
<col style="width: 30%">
</colgroup>
<tr>
<td>Nombre</td>
<td>Email</td>
<td>Teléfono</td>
</tr>
</table>
Aplicar fondos a grupos de columnas
<table>
<colgroup>
<col style="background: #f8f9fa">
<col span="2" style="background: #e9ecef">
</colgroup>
<tr>
<td>Producto</td>
<td>Precio</td>
<td>Stock</td>
</tr>
</table>
Atributos clave
| Atributo | Descripción |
|---|---|
span |
Número de columnas que abarca el grupo (si no se usa <col>) |
style |
CSS en línea para el grupo |
class |
Clase CSS para estilos reutilizables |
Ejemplo avanzado
<table border="1">
<colgroup>
<col class="nombre">
<colgroup span="2" style="background: #e9ecef">
<col>
<col style="width: 100px">
</colgroup>
<tr>
<th>Nombre</th>
<th>Ventas Q1</th>
<th>Ventas Q2</th>
</tr>
<tr>
<td>Ana</td>
<td>$5,000</td>
<td>$7,200</td>
</tr>
</table>
<style>
.nombre {
background: #f8f9fa;
width: 150px;
}
</style>
Accesibilidad
-
Limitaciones: Los lectores de pantalla no anuncian los estilos aplicados con
<colgroup>. -
Buenas prácticas:
-
Usar atributos
aria-labelsi el estilo transmite información importante. -
Complementar con etiquetas semánticas (
<th>,<caption>).
-
Errores comunes
Anidación incorrecta
<!-- Incorrecto -->
<table>
<tr>
<colgroup> <!-- Debe estar antes de las filas -->
<col>
</colgroup>
</tr>
</table>
Usar propiedades CSS no compatibles
<col style="color: red"> <!-- No funciona -->
Ignorar el orden en la tabla
<table> <thead> <!-- Incorrecto: <colgroup> debe ir antes --> <colgroup>...</colgroup> </table>
Buenas prácticas
Orden correcto: <table> → <caption> → <colgroup> → <thead>/<tbody>
Usar <col> para control individual: Cada <col> dentro de <colgroup> representa una columna.
Evitar estilos en línea: Preferir clases CSS para mantenimiento fácil.
Comparación con elementos similares
| Elemento | Propósito | Ejemplo |
|---|---|---|
<colgroup> |
Estilos para grupos de columnas | Anchos, fondos |
<thead> |
Encabezados de tabla | Títulos de columnas |
<tbody> |
Cuerpo de la tabla | Filas de datos |
Conclusión:
La etiqueta <colgroup> es esencial para:
- Simplificar el diseño de tablas complejas.
- Mantener estilos consistentes en columnas.
- Mejorar la organización del código HTML.
¡Úsala para crear tablas más limpias y profesionales!