Supongamos este marcado:
<table class="table table-bordered" align="center">
No importa cuántas celdas tengo, la tabla siempre tiene un ancho del 100%. ¿Porque eso?
Supongamos este marcado:
<table class="table table-bordered" align="center">
No importa cuántas celdas tengo, la tabla siempre tiene un ancho del 100%. ¿Porque eso?
Respuestas:
Todas las mesas dentro del bootstrap se estiran de acuerdo con su contenedor, lo que puede hacer fácilmente colocando su mesa dentro de un .span*
elemento de cuadrícula de su elección. Si desea eliminar esta propiedad, puede crear su propia clase de tabla y simplemente agregarla a la tabla que desea expandir con el contenido dentro de:
.table-nonfluid {
width: auto !important;
}
Puede agregar esta clase dentro de su propia hoja de estilo y simplemente agregarla al contenedor de su tabla de la siguiente manera:
<table class="table table-nonfluid"> ... </table>
De esta forma, su cambio no afectará a la hoja de estilo de arranque en sí (es posible que desee tener una tabla fluida en otro lugar de su documento).
.span*
clase a su tabla para darle algo de ancho.
!important
a lawidth: auto
<table style="width: auto;" ...
funciona bien. Probado en Chrome 38, IE 11 y Firefox 34.
jsfiddle: http://jsfiddle.net/rpaul/taqodr8o/
Si estás usando Bootstrap 4, úsalo .w-auto
.
¿Por qué luchar contra eso? ¿Por qué no simplemente controlar el ancho de su mesa usando la cuadrícula bootstrap? Este es el marcado Bootstrap 3.
<div class="row">
<div class="col-sm-6">
<table></table>
</div>
</div>
Esto creará una tabla que es la mitad (6 de 12) del ancho del elemento contenedor.
A veces uso estilos en línea según las otras respuestas, pero se desaconseja.
Si está utilizando Bootstrap 4, tiene algunas clases de ayuda agradables para ancho como:
w-25, w-50, w-75, and w-100
Aquí está el documento: https://getbootstrap.com/docs/4.0/utilities/sizing/
Estaba teniendo el mismo problema, arreglé la tabla y luego especifiqué mi ancho td. Si tienes esto, puedes hacerlo también.
<style>
table {
table-layout: fixed;
word-wrap: break-word;
}
</style>
<td width="10%" /td>
No tuve suerte con .table-nonfluid.
width: auto !important;
!important
(es una mala práctica ). Ver comentario sobre una respuesta a continuación .
¡He intentado agregar style="width: auto !important"
y funciona muy bien para mí!
<link>
etiqueta de estilos personalizados aparece debajo de la <link>
etiqueta de Bootstrap ), entonces las reglas caerán en cascada según lo diseñado, y no debería necesitar usar su !important
excepción en absoluto. Esto es cierto porque width: 100%;
se define table
en Bootstrap CSS y, por lo tanto, reemplaza su width: auto;
regla.