Para responder a su pregunta, esto es todo lo que necesita; vea una demostración receptiva completa con css prefijado :
/* Using col-xs media query breakpoint but you can change 481 to 768 to only apply to col-sm and above if you'd like*/
@media only screen and (min-width : 481px) {
.flex-row {
display: flex;
flex-wrap: wrap;
}
.flex-row > [class*='col-'] {
display: flex;
flex-direction: column;
}
.flex-row.row:after,
.flex-row.row:before {
display: flex;
}
}
Para agregar soporte para contenido en miniatura flexible dentro de columnas flexibles como la captura de pantalla anterior también agregue esto ... Tenga en cuenta que también puede hacer esto con paneles:
.flex-row .thumbnail,
.flex-row .caption {
display: flex;
flex: 1 0 auto;
flex-direction: column;
}
.flex-text {
flex-grow: 1;
}
.flex-row img {
width: 100%;
}
Si bien flexbox no funciona en IE9 y a continuación, puede usar la demostración con una alternativa utilizando etiquetas condicionales con algo como las cuadrículas de JavaScript como un polyfill:
<!--[if lte IE 9]>
<![endif]-->
En cuanto a los otros dos ejemplos en la respuesta aceptada ... La demostración de la tabla es una idea decente pero se está implementando incorrectamente. La aplicación de ese CSS en las clases de columna de arranque específicamente romperá sin duda el marco de la cuadrícula por completo. Debe usar un selector personalizado para uno y dos estilos de tablas que no se deben aplicar a los [class*='col-']
que tienen anchos definidos. Este método SOLO debe usarse si desea columnas de igual altura y ancho igual. No está destinado a ningún otro diseño y NO responde. Sin embargo, podemos hacerlo retroceder en pantallas móviles ...
<div class="table-row-equal">
<div class="thumbnail">
Content...
</div>
<div class="thumbnail">
Content...
</div>
</div>
@media only screen and (min-width : 480px){
.table-row-equal {
display: table;
width: 100%;
table-layout: fixed;
border-spacing: 30px 0px;
word-wrap: break-word;
}
.table-row-equal .thumbnail {
float: none;
display: table-cell;
vertical-align: top;
width: 1%;
}
}
Por último, la primera demostración en la respuesta aceptada que implementa una versión del único diseño verdadero es una buena opción para algunas situaciones, pero no es adecuada para columnas de arranque. La razón de esto es que todas las columnas se expanden a la altura del contenedor. Por lo tanto, esto también interrumpirá la capacidad de respuesta, ya que las columnas no se expanden a los elementos a su lado, sino a todo el contenedor. Este método tampoco le permitirá aplicar márgenes inferiores a las filas por más tiempo y también causará otros problemas en el camino, como desplazarse para anclar etiquetas.
Para ver el código completo, vea Codepen, que automáticamente antepone el código flexbox.