What is a Bootstrap table?

Tablas Bootstrap: Domina el Arte de las Tablas Web Responsivas

hace 2 años

Valoración: 3.79 (4669 votos)

Las tablas son elementos fundamentales en el diseño web para presentar datos de manera organizada y legible. Con Bootstrap, el popular framework CSS, crear y estilizar tablas se convierte en una tarea sencilla y eficiente, especialmente cuando se busca la responsividad en diferentes dispositivos. En este artículo, exploraremos a fondo las tablas Bootstrap, desde su definición básica hasta técnicas avanzadas para personalizarlas y adaptarlas a tus necesidades.

How to set pagination in Bootstrap table?
Pagination is built with list HTML elements so screen readers can announce the number of available links. Use a wrapping

Índice de Contenido

¿Qué es una tabla Bootstrap?

Una tabla Bootstrap es una tabla HTML enriquecida con las clases CSS de Bootstrap para aplicar estilos predefinidos y comportamientos responsivos. Bootstrap proporciona una serie de clases que, al ser aplicadas a las etiquetas `

`, `

`, `

` y `

`, transforman una tabla HTML básica en un componente visualmente atractivo y funcional. La principal ventaja de utilizar tablas Bootstrap radica en su capacidad para adaptarse a diferentes tamaños de pantalla, asegurando que la información se visualice correctamente tanto en dispositivos de escritorio como en móviles.

Aumentar el tamaño de una tabla en Bootstrap

Bootstrap ofrece diversas opciones para ajustar el tamaño de las columnas de una tabla, permitiendo controlar el ancho y la distribución del contenido. A continuación, exploraremos las clases más comunes para manipular el ancho de las columnas en tablas Bootstrap 5:

Ancho automático con .w-auto

La clase .w-auto es una herramienta poderosa para permitir que las columnas de la tabla se ajusten automáticamente al contenido que albergan. Al agregar esta clase al elemento `

`, el ancho de las columnas se adaptará dinámicamente para ocupar el mínimo espacio necesario para mostrar su contenido sin superposiciones ni cortes. Esto es ideal para tablas con contenido variable en las celdas, donde se busca una presentación natural y adaptable.

Ejemplo de tabla con ancho automático:

<table class="table w-auto"> <thead> <tr> <th>#</th> <th>Nombre</th> <th>Apellido</th> <th>País</th> <th>Ciudad</th> <th>Profesión</th> <th>Edad</th> </tr> </thead> <tbody> <tr> <th scope="row">1</th> <td>Kate</td> <td>Moss</td> <td>USA</td> <td>New York City</td> <td>Diseñador Web</td> <td>23</td> </tr> <tr> <th scope="row">2</th> <td>Anna</td> <td>Wintour</td> <td>Reino Unido</td> <td>Londres</td> <td>Desarrollador Frontend</td> <td>36</td> </tr> <tr> <th scope="row">3</th> <td>Tom</td> <td>Bond</td> <td>España</td> <td>Madrid</td> <td>Fotógrafo</td> <td>25</td> </tr> </tbody> </table> 

Ancho mínimo con .th-lg y .th-sm

Si necesitas establecer un ancho mínimo para las columnas, Bootstrap ofrece las clases .th-lg y .th-sm. Estas clases se aplican a los elementos `

` dentro de `

` y definen un ancho mínimo de 9 rem (.th-lg) y 6 rem (.th-sm) respectivamente. Estas clases son útiles para asegurar que las columnas mantengan una legibilidad mínima incluso en pantallas pequeñas o cuando el contenido es breve.

Ejemplo de tabla con ancho mínimo en columnas:

<table class="table"> <thead> <tr> <th class="th-lg">#</th> <th class="th-lg">Lorem ipsum dolor</th> <th class="th-lg">Lorem ipsum dolor</th> <th class="th-lg">Lorem ipsum dolor</th> </tr> </thead> <tbody> <tr> <th scope="row">1</th> <td>Lorem ipsum dolor</td> <td>Lorem ipsum dolor</td> <td>Lorem ipsum dolor</td> </tr> <tr> <th scope="row">2</th> <td>Lorem ipsum dolor</td> <td>Lorem ipsum dolor</td> <td>Lorem ipsum dolor</td> </tr> <tr> <th scope="row">3</th> <td>Lorem ipsum dolor</td> <td>Lorem ipsum dolor</td> <td>Lorem ipsum dolor</td> </tr> </tbody> </table> 

Ancho fijo con .table-fixed

Para lograr un diseño de tabla más robusto y predecible, puedes utilizar la clase .table-fixed. Al agregar esta clase al elemento `

`, se establece un ancho fijo para todas las columnas de la tabla. El diseño de la tabla con .table-fixed se basa en la primera fila, lo que significa que el ancho de las columnas se determina por el contenido de la primera fila y se aplica a todas las filas siguientes. Esta opción es útil cuando se necesita un diseño de tabla consistente y uniforme, especialmente en tablas complejas con muchas columnas.

Ejemplo de tabla con ancho fijo:

<table class="table table-fixed"> <thead> <tr> <th>#</th> <th>Nombre</th> <th>Apellido</th> <th>País</th> <th>Ciudad</th> <th>Profesión</th> <th>Edad</th> </tr> </thead> <tbody> <tr> <th scope="row">4</th> <td>Jerry</td> <td>Horwitz</td> <td>Italy</td> <td>Bari</td> <td>Editor-in-chief</td> <td>41</td> </tr> <tr> <th scope="row">5</th> <td>Janis</td> <td>Joplin</td> <td>Poland</td> <td>Warsaw</td> <td>Video Maker</td> <td>39</td> </tr> <tr> <th scope="row">6</th> <td>Gary</td> <td>Winogrand</td> <td>Germany</td> <td>Berlin</td> <td>Photographer</td> <td>37</td> </tr> </tbody> </table> 

Paginación en tablas Bootstrap

Cuando se trabaja con grandes conjuntos de datos en tablas, la paginación se convierte en una herramienta esencial para mejorar la experiencia del usuario. Bootstrap facilita la implementación de la paginación en tablas, permitiendo dividir el contenido en páginas más pequeñas y navegables. A continuación, exploraremos cómo agregar paginación a tus tablas Bootstrap:

Estructura básica de paginación

La paginación en Bootstrap se basa en listas HTML (`<ul>` y `<li>`) y enlaces (`<a>`) con clases CSS específicas. El componente de paginación se envuelve generalmente dentro de un elemento `

Ejemplo de estructura básica de paginación:

<nav aria-label="Ejemplo de paginación"> <ul class="pagination"> <li class="page-item"><a class="page-link" href="#">Anterior</a></li> <li class="page-item"><a class="page-link" href="#">1</a></li> <li class="page-item"><a class="page-link" href="#">2</a></li> <li class="page-item"><a class="page-link" href="#">3</a></li> <li class="page-item"><a class="page-link" href="#">Siguiente</a></li> </ul> </nav> 

Estados deshabilitado y activo

Los enlaces de paginación pueden personalizarse para diferentes estados. La clase .disabled se utiliza para indicar enlaces que no son clickables, mientras que .active señala la página actual. Es importante destacar que, aunque .disabled utiliza pointer-events: none para deshabilitar visualmente los enlaces `<a>`, esta propiedad CSS no está completamente estandarizada y no afecta la navegación por teclado. Por lo tanto, se recomienda agregar tabindex="-1" en enlaces deshabilitados y utilizar JavaScript personalizado para deshabilitar completamente su funcionalidad.

How to increase the size of a table in Bootstrap?
Add . w-auto class to the table element to set an auto width to the table column. The width of the columns will automatically adjust to the content of the column.

Ejemplo de paginación con estados deshabilitado y activo:

<nav aria-label="..."> <ul class="pagination"> <li class="page-item disabled"> <a class="page-link" href="#" tabindex="-1" aria-disabled="true">Anterior</a> </li> <li class="page-item"><a class="page-link" href="#">1</a></li> <li class="page-item active" aria-current="page"> <a class="page-link" href="#">2 <span class="sr-only">(actual)</span></a> </li> <li class="page-item"><a class="page-link" href="#">3</a></li> <li class="page-item"><a class="page-link" href="#">Siguiente</a></li> </ul> </nav> 

Tamaños de paginación

Para paginaciones más grandes o pequeñas, Bootstrap ofrece las clases .pagination-lg y .pagination-sm. Estas clases se agregan al elemento `<ul class="pagination">` para modificar el tamaño de los elementos de paginación.

Ejemplo de paginación con diferentes tamaños:

<nav aria-label="..."> <ul class="pagination pagination-lg"> <li class="page-item disabled"> <a class="page-link" href="#" tabindex="-1" aria-disabled="true">1</a> </li> <li class="page-item"><a class="page-link" href="#">2</a></li> <li class="page-item"><a class="page-link" href="#">3</a></li> </ul> </nav> <nav aria-label="..."> <ul class="pagination pagination-sm"> <li class="page-item disabled"> <a class="page-link" href="#" tabindex="-1" aria-disabled="true">1</a> </li> <li class="page-item"><a class="page-link" href="#">2</a></li> <li class="page-item"><a class="page-link" href="#">3</a></li> </ul> </nav> 

Alineación de la paginación

Bootstrap permite alinear los componentes de paginación utilizando las utilidades de flexbox. Puedes centrar, alinear a la derecha o justificar la paginación dentro de su contenedor.

What is a Bootstrap table?
An extended table to the integration with some of the most widely used CSS frameworks. ( Supports Bootstrap, Semantic UI, Bulma, Material Design, Foundation)

Ejemplo de paginación centrada:

<nav aria-label="Ejemplo de paginación"> <ul class="pagination justify-content-center"> <li class="page-item disabled"> <a class="page-link" href="#" tabindex="-1" aria-disabled="true">Anterior</a> </li> <li class="page-item"><a class="page-link" href="#">1</a></li> <li class="page-item"><a class="page-link" href="#">2</a></li> <li class="page-item"><a class="page-link" href="#">3</a></li> <li class="page-item"><a class="page-link" href="#">Siguiente</a></li> </ul> </nav> 

Preguntas Frecuentes sobre Tablas Bootstrap

¿Qué hace que las tablas Bootstrap sean responsivas?
Bootstrap utiliza CSS y media queries para adaptar el diseño de las tablas a diferentes tamaños de pantalla. Clases como .table-responsive (para tablas horizontales) y las técnicas de ajuste de ancho de columna aseguran que las tablas se visualicen correctamente en dispositivos móviles y de escritorio.
¿Puedo personalizar el estilo de las tablas Bootstrap?
Sí, Bootstrap permite personalizar el estilo de las tablas. Puedes utilizar las clases predefinidas de Bootstrap para cambiar colores, bordes y otros aspectos visuales. Además, puedes añadir tus propias clases CSS o modificar las variables de Bootstrap para una personalización más profunda.
¿Cómo puedo agregar bordes a una tabla Bootstrap?
Bootstrap ofrece clases como .table-bordered para agregar bordes a todos los lados de la tabla y sus celdas. También puedes utilizar clases de utilidad de bordes para un control más granular sobre qué bordes mostrar.
¿Es posible ordenar las columnas de una tabla Bootstrap?
Bootstrap en sí mismo no proporciona funcionalidad de ordenamiento de tablas. Sin embargo, puedes integrar bibliotecas JavaScript de terceros, como DataTables o Bootstrap Table, que ofrecen características avanzadas como ordenamiento, filtrado y búsqueda en tablas Bootstrap.
¿Cómo puedo hacer que una tabla Bootstrap sea más compacta?
Utiliza la clase .table-sm para reducir el padding de las celdas y crear una tabla más compacta. Esta clase es útil para mostrar grandes cantidades de datos en un espacio limitado.

En conclusión, las tablas Bootstrap son una herramienta esencial para el desarrollo web responsivo. Su facilidad de uso, combinada con la flexibilidad de personalización y las opciones de paginación y ajuste de tamaño, las convierte en una excelente opción para presentar datos de manera clara y efectiva en cualquier proyecto web. Dominar las técnicas presentadas en este artículo te permitirá crear tablas Bootstrap profesionales y adaptadas a las necesidades de tus usuarios.

Subir