Aby odpowiedzieć na twoje pytanie, wystarczy zobaczyć pełną responsywną wersję demonstracyjną z prefiksem css :
/* 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;
}
}
Aby dodać obsługę flex zawartości miniaturek w kolumnach flex, takich jak powyższy zrzut ekranu, dodaj również ... Uwaga: możesz to zrobić również z panelami:
.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%;
}
Podczas gdy Flexbox nie działa w IE9 i niższych wersjach demonstracyjnych, możesz używać wersji demonstracyjnej z rezerwą przy użyciu tagów warunkowych z czymś takim jak siatki javascript jako polifill:
<!--[if lte IE 9]>
<![endif]-->
Jeśli chodzi o dwa pozostałe przykłady w zaakceptowanej odpowiedzi ... Demo tabeli jest dobrym pomysłem, ale jest źle wdrażane. Zastosowanie tego CSS w klasach kolumn ładowania początkowego bez wątpienia całkowicie zepsuje strukturę siatki. Powinieneś używać niestandardowego selektora dla jednego i dwóch stylów tabel, które nie powinny być stosowane do tych, [class*='col-']
które mają zdefiniowane szerokości. Tej metody należy używać TYLKO, jeśli chcesz kolumny o równej wysokości ORAZ równej szerokości. Nie jest przeznaczony do żadnych innych układów i NIE reaguje. Możemy to jednak cofnąć na wyświetlaczach mobilnych ...
<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%;
}
}
Wreszcie, pierwsze demo w zaakceptowanej odpowiedzi, które implementuje wersję jednego prawdziwego układu, jest dobrym wyborem w niektórych sytuacjach, ale nie nadaje się do kolumn bootstrap. Powodem tego jest to, że wszystkie kolumny rozszerzają się do wysokości kontenera. Spowoduje to również uszkodzenie odpowiedzi, ponieważ kolumny nie rozwijają się do elementów obok nich, ale całego kontenera. Ta metoda nie pozwoli również na stosowanie dolnych marginesów w wierszach i spowoduje inne problemy po drodze, takie jak przewijanie do tagów zakotwiczenia.
Pełny kod znajduje się w Codepen, który automatycznie poprzedza kod Flexbox.