2016-07-21 2 views
0

Как я могу центрировать две кнопки по вертикали на мой взгляд?Как центрировать элемент в столбце по вертикали относительно другого столбца

. Например:

<div class="container"> 
    <div class="row"> 
     <div class="col-md-5"> 
      <h4>My List</h4> 
      <div style="height:400px; overflow-y:auto"> 
       <ul> 
        // List of checkboxes 
       </ul> 
      </div> 
     </div> 

     <div class="col-md-2"> 
      <input type="button" id="btnAddField" class="btn btn-primary" value="Add" /> 
      <input type="button" id="btnRemoveField" class="btn btn-primary" value="Remove" /> 
     </div> 

     <div class="col-md-5"> 
      <h4>Selected Fields</h4> 
      // This will contain the list selected from the checkboxes. 
     </div> 
    </div> 
</div> 

Я хочу кнопки в колонке 2 центрируются по отношению к колонку 1 (что в данном случае я сделал высоту 400px

+0

Это самозагрузки? –

+0

Я использую бутстрап. – PrivateJoker

+0

Этот вопрос задан и дан ответ. Обратите внимание, что bootstrap имеет мало общего с этим, поскольку он не обеспечивает средства для достижения этого, но есть несколько способов сделать это: -http: //stackoverflow.com/questions/79461/vertical-alignment-of-elements -in-a-div? rq = 1 или этот http://stackoverflow.com/questions/396145/how-to-vertically-center-a-div-for-all-browsers?rq=1 или этот http://stackoverflow.com/questions/6490252/vertically-centering-a-div-inside-another-div?rq=1? –

ответ

0

Вы можете добавить новый класс на row, который будет использовать Flexbox и вертикально центр детали с align-items: center, когда ширина > 992px что точка останова из mdDEMO

@media(min-width: 992px) { 
    .flex-row { 
    display: flex; 
    align-items: center; 
    } 
} 
+0

Я бы старался использовать 'align-items' vs' margin: auto' для top & bottom. Есть много ошибок, которые проявляются в ситуациях переполнения. – probablyup

+0

Это работает, однако, это центрирующая колонка №3, где я хочу, чтобы колонка № 2 была центрирована. – PrivateJoker

+0

Тогда вы можете добавить это https://jsfiddle.net/2Lzo9vfc/592/ –

0

Пробег: css Высота линии. Надеюсь, это поможет.

vertical-align: middle; 
line-height: 400px; 
0

Если вы можете использовать Flexbox, что-то, как это будет делать то, что вы хотите (с помощью существующих классов):

.row { 
    display: flex; 

    [class^="col"] { 
     float: none; 
     flex-shrink: 0; 
     margin: auto 0; 
    } 
} 
+0

Пытаясь использовать этот фрагмент, но он не работает для меня. – PrivateJoker

+0

Я думаю, что существующая бутстрап css мешает. – probablyup

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