Bootstrap: вертикальное и горизонтальное выравнивание

В Bootstrap для горизонтального выравнивания текста используются следующие классы:

<p class="text-left">Выравнивание по левому краю</p>
<p class="text-center">Выравнивание по центру</p>
<p class="text-right">Выравнивание по правому краю</p>
<p class="text-justify">Выравнивание по ширине</p>
<p class="text-nowrap">Выравнивание без отступов</p>






Для выравнивания контента по вертикали в bootstrap нет специальных классов, поэтому можно использовать следующие подходы.

.vcenter {
  display: inline-block;
  float: none;
  vertical-align: middle;
}

это класс нужно применить к блоку col, в котором находится контент который нужно отценровать и ко всем блокам внутри блока row. Но есть один нюанс, необходимо чтобы между тегами блоков не было пробелов. Чтобы не нарушать читаемость кода можно использовать теги комментарием HTML <!— —>, как указано ниже.

<div class="row">
   <div class="col-md-6 col-sm-6 vcenter"><div><!-- 
--><div class="col-md-6 col-sm-6 vcenter"><div>
</div>

Демо тут

Второй вариант использование табличных стилей

.container-fluid{
  height: 200px;
  display:table;
  width: 100%;
  padding: 0;
}
 
.row-fluid {
  height:100%; 
  display:table-cell; 
  vertical-align: middle;
}
 
.centering {
  float:none;
  margin:0 auto;
}
<div class="container-fluid">
   <div class="row-fluid">
      <div class="centering">
          Контент по центру блока
      </div>
   </div>
</div>

Демо тут

You may also like...

16 комментариев

  1. Артем:

    А как тогда выравнивать блоки по центру в бутстрапе?

  2. Странно что в бутстрап не придумали ничего, чтобы выровнять блоки по высоте.

  3. Для горизонтального центрирования всё просто. Верткальное же изначальное не было предусмотрено в спецификации CSS и по сей день вызывает ряд проблем.

  4. Для горизонтального центрирования всё просто. Вертикальное же изначальное не было предусмотрено в спецификации CSS и по сей день вызывает ряд проблем.

  5. Если дополнительно нужно горизонтальное центрирование – оно обеспечивается другими средствами, например

  6. У свойства vertical-align , которое управляет вертикальным расположением элемента, есть два режима работы.

  7. Maha:

    Выравнивание блоков по вертикали на JQuery
    function EqualizeColumns(BlockClass) {
    var maxH = 0;
    $(BlockClass).each(function () {
    var h_block = parseInt($(this).height());
    if(h_block > maxH) {
    maxH = h_block;
    };
    });
    $(BlockClass).height(maxH);
    }
    $(document).ready(function(){
    EqualizeColumns(«.my_class»);//Вместо my_class подставляем имя своего класса
    $(window).resize(function(){
    $(«.my_class»).height(‘100%’);//Возвращаем блокам изначальную высоту, без этого на ресайзе корректно работать не будет!
    EqualizeColumns(«.my_class»);
    });
    });

  8. Для горизонтального центрирования всё просто. Вертикальное же изначальное не было предусмотрено в спецификации CSS и по сей день вызывает ряд проблем.

  9. adrin:

    «Но есть один нюанс, необходимо чтобы между тегами блоков не было пробелов.»
    Для родителя делается font-size: 0, а для дочерних уже задается нужный font-size и пробелы между блоками не беспокоят.

  10. Мой Хозяин:

    Вообще не вариант, на самом то деле есть в бутстрапе отдельный класс для выравнивания текста по центру.

  11. Для горизонтального центрирования всё просто. Вертикальное же изначальное не было предусмотрено в спецификации CSS и по сей день вызывает ряд проблем.

  12. Привет! Для горизонтального центрирования всё просто. Вертикальное же изначальное не было предусмотрено в спецификации CSS и по сей день вызывает ряд проблем.

  13. У свойства vertical-align , которое управляет вертикальным расположением элемента, есть два режима работы.

Добавить комментарий

Яндекс.Метрика