En este post te mostraré cómo hacer que una tabla o elemento table
de HTML sea responsiva en Bootstrap 4.
Una tabla responsiva en Bootstrap 4 es una tabla que se adapta a cualquier tamaño de pantalla, aunque específicamente hablando de tablas, las de Bootstrap se deben encerrar en un div que hace que al tabla sea “scrollable”, pero la tabla mantiene su tamaño.
Con los ejemplos verás a lo que me refiero.
Vamos rápido. Para crear una tabla responsiva en Bootstrap 4 debes encerrar el elemento table
dentro de un div
con la clase table-responsive
.
Por ejemplo, tengo la siguiente tabla normal:
<table class="table table-bordered">
<thead>
<tr>
<th>Nombre</th>
<th>Código</th>
<th>Precio</th>
<th>Cantidad</th>
<th>Total</th>
</tr>
</thead>
<tbody>
<tr>
<td>BARRITAS FRESA</td>
<td>1</td>
<td>50.0</td>
<td>1.0</td>
<td>50.0</td>
</tr>
<tr>
<td>BARRITAS MORAS</td>
<td>2</td>
<td>30.0</td>
<td>1.0</td>
<td>30.0</td>
</tr>
</tbody>
</table>
Por el momento no es responsiva, sin embargo, si la coloco dentro de un div
con la clase table-responsive
lo será:
<div clas="table-responsive">
<table class="table table-bordered">
<thead>
<tr>
<th>Nombre</th>
<th>Código</th>
<th>Precio</th>
<th>Cantidad</th>
<th>Total</th>
</tr>
</thead>
<tbody>
<tr>
<td>BARRITAS FRESA</td>
<td>1</td>
<td>50.0</td>
<td>1.0</td>
<td>50.0</td>
</tr>
<tr>
<td>BARRITAS MORAS</td>
<td>2</td>
<td>30.0</td>
<td>1.0</td>
<td>30.0</td>
</tr>
</tbody>
</table>
</div>
Voy a mostrarte un ejemplo que puedes probar tú mismo. Me basaré en una plantilla de Bootstrap 4 que publiqué hace tiempo, agregaré la misma tabla:
<!doctype html>
<html lang="es">
<!--
Ejemplo de una tabla responsiva en Bootstrap 4
Visita: parzibyte.me/blog
-->
<head>
<meta charset="utf-8">
<meta name="viewport" content="width=device-width, initial-scale=1,
shrink-to-fit=no">
<meta name="description" content="Plantilla básica para Bootstrap">
<meta name="author" content="Parzibyte">
<title>Tabla responsiva BS4</title>
<!-- Cargar el CSS de Boostrap-->
<link
href="https://stackpath.bootstrapcdn.com/bootstrap/4.3.1/css/bootstrap.min.css"
rel="stylesheet"
integrity="sha384-ggOyR0iXCbMQv3Xipma34MD+dH/1fQ784/j6cY/iJTQUOhcWr7x9JvoRxT2MZw1T"
crossorigin="anonymous">
</head>
<body>
<main role="main" class="container">
<div class="row">
<div class="col-12">
<h1>Tabla responsiva</h1>
<a href="//parzibyte.me/blog" target="_blank">By Parzibyte</a>
<div class="table-responsive">
<table class="table table-bordered">
<thead>
<tr>
<th>Nombre</th>
<th>Código</th>
<th>Precio</th>
<th>Cantidad</th>
<th>Total</th>
</tr>
</thead>
<tbody>
<tr>
<td>BARRITAS FRESA</td>
<td>1</td>
<td>50.0</td>
<td>1.0</td>
<td>50.0</td>
</tr>
<tr>
<td>BARRITAS MORAS</td>
<td>2</td>
<td>30.0</td>
<td>1.0</td>
<td>30.0</td>
</tr>
</tbody>
</table>
</div>
</div>
</div>
</main>
</body>
</html>
Cuando se carga en una pantalla grande, se ve así:
Pero si la página web se ve en una pantalla distinta, por ejemplo, la de un iPhone 5, la misma se muestra dentro de un div con scroll:
De esta manera cualquier dispositivo será capaz de mostrar la tabla, y si la pantalla no basta, la tabla estará dentro de un div.
Puedes probarlo en una PC o en cualquier dispositivo para que veas cómo es responsivo.
Además de la clase table-responsive
existen las clases para los famosos breakpoints de Bootstrap 4, que no son otra cosa más que los tamaños de pantalla:
Cuando un div
tenga esa clase, la tabla solo se mostrará responsiva si está dentro de ese tamaño de pantalla, si es una pantalla más grande que la definida ahí, no se mostrará el scroll.
Por ejemplo, si tenemos un div
con la clase table-responsive-md
la tabla se mostrará responsiva en el tamaño sm
y md
, pero no se mostrará responsiva en un lg
o xl
.
Te invito a leer más sobre Bootstrap 4 o HTML en mi blog.
El día de hoy te mostraré cómo crear un servidor HTTP (servidor web) en Android…
En este post te voy a enseñar a designar una carpeta para imprimir todos los…
En este artículo te voy a enseñar la guía para imprimir en una impresora térmica…
Hoy te voy a mostrar un ejemplo de programación para agregar un módulo de tasa…
Los usuarios del plugin para impresoras térmicas pueden contratar licencias, y en ocasiones me han…
Hoy voy a enseñarte cómo imprimir el € en una impresora térmica. Vamos a ver…
Esta web usa cookies.