Я пытаюсь выровнять текст по вертикали внутри столбца.Если я использую my-auto в родительском элементе (столбце), то текст выравнивается по вертикали, но все тянет к центру, и мне нужно сохранить фон.Цвет фона в настоящее время на столбце.
my-auto
Когда я удаляю my-auto, возвращается оранжевый фон, но текст вверху.
Я пытался создать внутреннюю строку> структуру столбца, чтобы учесть это, но это не работает.Какие-нибудь мысли?
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script> <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet"/> <div class="container-fluid"> <div class="row no-gutters"> <div class="col-xs-6 col-sm-4 col-md-3 col-lg-4 col-xl-4 my-auto" style="background-color: #f04e23;"> <h1 class="display-4 text-center">2018 Speakers</h1> </div> <div class="col-xs-6 col-sm-4 col-md-3 col-lg-2 col-xl-2"> <div class="card"> <img class="img-fluid" src="https://picsum.photos/400/600" alt="" /> </div> </div> <div class="col-xs-6 col-sm-4 col-md-3 col-lg-2 col-xl-2"> <div class="card"> <img class="img-fluid" src="https://picsum.photos/400/600" alt="" /> </div> </div> <div class="col-xs-6 col-sm-4 col-md-3 col-lg-2 col-xl-2"> <div class="card"> <img class="img-fluid" src="https://picsum.photos/400/600" alt="" /> </div> </div> <div class="col-xs-6 col-sm-4 col-md-3 col-lg-2 col-xl-2"> <div class="card"> <img class="img-fluid" src="https://picsum.photos/400/600" alt="" /> </div> </div> </div> </div>
Вместо использования полей задайте изгиб столбца, добавив класс .d-flex, а затем используйте класс .align-items-center для центрирования текста по вертикали.Вы также можете добавить .justify-content-center для центрирования по горизонтали:
.d-flex
.align-items-center
.justify-content-center
<script src="https://code.jquery.com/jquery-3.3.1.slim.min.js"></script> <script src="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/js/bootstrap.min.js"></script> <link href="https://stackpath.bootstrapcdn.com/bootstrap/4.1.3/css/bootstrap.min.css" rel="stylesheet"/> <div class="container-fluid"> <div class="row no-gutters"> <div class="col-xs-6 col-sm-4 col-md-3 col-lg-4 col-xl-4 d-flex align-items-center justify-content-center" style="background-color: #f04e23;"> <h1 class="display-4 text-center">2018 Speakers</h1> </div> <div class="col-xs-6 col-sm-4 col-md-3 col-lg-2 col-xl-2"> <div class="card"> <img class="img-fluid" src="https://picsum.photos/400/600" alt="" /> </div> </div> <div class="col-xs-6 col-sm-4 col-md-3 col-lg-2 col-xl-2"> <div class="card"> <img class="img-fluid" src="https://picsum.photos/400/600" alt="" /> </div> </div> <div class="col-xs-6 col-sm-4 col-md-3 col-lg-2 col-xl-2"> <div class="card"> <img class="img-fluid" src="https://picsum.photos/400/600" alt="" /> </div> </div> <div class="col-xs-6 col-sm-4 col-md-3 col-lg-2 col-xl-2"> <div class="card"> <img class="img-fluid" src="https://picsum.photos/400/600" alt="" /> </div> </div> </div> </div>