2016-07-04 2 views

ответ

-2

Вот что вы делаете , если вы хотите использовать Flexbox

CSS-

.row.is-flex { 
    display: flex; 
    flex-wrap: wrap; 
} 
.row.is-flex > [class*='col-'] { 
    display: flex; 
    flex-direction: column; 
} 

/* 
* And with max cross-browser enabled. 
* Nobody should ever write this by hand. 
* Use a preprocesser with autoprefixing. 
*/ 
.row.is-flex { 
    display: -webkit-box; 
    display: -webkit-flex; 
    display: -ms-flexbox; 
    display: flex; 
    -webkit-flex-wrap: wrap; 
    -ms-flex-wrap: wrap; 
    flex-wrap: wrap; 
} 

.row.is-flex > [class*='col-'] { 
    display: -webkit-box; 
    display: -webkit-flex; 
    display: -ms-flexbox; 
    display: flex; 
    -webkit-box-orient: vertical; 
    -webkit-box-direction: normal; 
    -webkit-flex-direction: column; 
    -ms-flex-direction: column; 
    flex-direction: column; 
} 

HTML-

<div class="row is-flex"> 
    <div class="col-sm-4">...</div> 
    <div class="col-sm-4">...</div> 
    <div class="col-sm-4">...</div> 
</div> 

источник (https://scotch.io/bar-talk/different-tricks-on-how-to-make-bootstrap-columns-all-the-same-height)

+0

Bootstrap 4 теперь по умолчанию является flexbox, поэтому все лишние CSS не нужны. http://www.codeply.com/go/m20UAOFw79 – ZimSystem

1

Используйте первые два решения this ответа. Третье решение включает flexbox, но, как вы упомянули, вы этого не хотите.

В случае ссылка не работает, вот первое решение: (используйте с осторожностью)

.row { 
    overflow:hidden; 
} 
[class*="col-"]{ 
    margin-bottom:-99999px; 
    padding-botton:99999px; 
} 

Решение 2: (таблицы)

.row { 
    display:table; 
} 
[class*="col-"] { 
    float:none; 
    display:table-cell; 
    vertical-align:top; 
} 
+1

Как уже упоминалось в другой ответ, эти решения действительно не работают, как они ломаются колонки обертку и отзывчивость. http://codeply.com/go/tPLjH5r6dJ – ZimSystem

+0

Вы должны сразу знать, что если решение предлагает добавить '-99999px' к вашим стилям, то это, очевидно, общее решение для взлома, и его следует использовать с особой осторожностью. –

+0

@EdmundReed Спасибо за этот комментарий ... даже если он был примерно через год ... –

0

Вы хотите получить c ольны должны быть равны по высоте? Для этого можно использовать Bootstrap 4's equal height cards. Используется display:table и display:table-cell, когда flexbox не включен .

UPDATE

Теперь Bootstrap 4 (альфа-6) является Flexbox по умолчанию столбцы всегда равны по высоте: http://www.codeply.com/go/m20UAOFw79

+1

Это не вопрос ОП. Он хочет, чтобы высота фактических столбцов. Карты с равной высотой не являются решением. –

+0

Я предлагал другой вариант, поскольку методы таблицы и отрицательной маржи имеют много неблагоприятных эффектов. – ZimSystem

 Смежные вопросы

  • Нет связанных вопросов^_^