How to align elements inside blocks vertically?

Have a container
<div class="row">
 <div class="col-xs-12 col-md-3 logo-container"></div>
 <div class="col-xs-12 col-md-4 search"></div>
 <div class="col-xs-12 col-md-5 ph-cart"></div>
</div>

How to align vertically content?
Do this:
.row {
 display: -webkit-flex;
 display: -o-flex;
 display: -ms-flex;
 display: -moz-flex;
 display: flex;
 align-items: center;
}

everything is OK, but in the adaptability of the containers are not arranged in a column, because the default flex-direction: row.
March 12th 20 at 08:10
3 answers
March 12th 20 at 08:12
Solution
Well, do in the adaptive version the up direction.
March 12th 20 at 08:14
col -am add a class:
align-self-center
I have bootstrap 3, there is no such property
and if the styles add the property align-self: center
nothing changes - Elsie.Schowalte commented on March 12th 20 at 08:17
@Elsie.Schowalte,
on .row and .col nothing hang. break butseriously the net.
if the flake column makes the unit and:
.block {
 display: flex;
 align-items: center;
 height: 150px;
}


if you are not a flake - Kelsie.Kautzer commented on March 12th 20 at 08:20
March 12th 20 at 08:16
line-height equal to put the size in the row height (or the height of the logo)

Find more questions by tags FlexboxBootstrapHTMLCSS