2015-11-12 4 views
1

Я пытаюсь вертикально центрировать ящик, используя display: flex;, в то время как он работает, когда коробка достаточно маленькая, но когда поле превышает высоту окна, часть содержимого будет отключена ,содержимое вертикального центра, которое превышает высоту окна

Рабочий пример: http://codepen.io/woutr_be/pen/bVQXLe

Пример с большой высоты: http://codepen.io/woutr_be/pen/KdrOZm

Это, кажется, связано с body: { height: 100%; }, но когда я извлекаю, что коробка не центрирован больше: http://codepen.io/woutr_be/pen/MazNrE

Я не могу понять, как заставить его работать, когда коробка имеет большую высоту.

+0

может, это предложить другой подход, который работает не имеет значения высоты? – Gacci

+0

@ Gacci Конечно, открыт для предложений –

+0

Вы просто пытаетесь вертикально выровнять свой элемент? – justinw

ответ

0

Это, как правило, я использую, когда мне нужно выровнять элемент по вертикали. Попытайтесь изменить высоту и ширину, и вы заметите, как он автоматически рассчитывает центрировать элемент.

div.container{ 
 
    width: 300px; 
 
    height: 300px; 
 
    position: relative; 
 
    
 
    background: salmon; 
 
} 
 

 
div.container > div.wrapper{ 
 
    position: absolute; 
 
    
 
    top: 50%; 
 
    left: 50%; 
 
    
 
    
 
    -webkit-transform: translate(-50%, -50%); 
 
     -moz-transform: translate(-50%, -50%); 
 
      transform: translate(-50%, -50%); 
 
    
 
    background: red; 
 
}
<div class='container'> 
 
    <div class='wrapper'> 
 
     <label>Some text</label> 
 
     <label>Some more text</label> 
 
    </div> 
 
</div>

+0

Ах, да, у меня на самом деле было это решение. Причина, по которой я этого не делал, состояла в том, что я использовал анимацию для отображения всплывающего окна. Который также использует свойство transform. (https://github.com/daneden/animate.css/blob/master/source/zooming_entrances/zoomIn.css) –

+0

Вы все еще можете использовать его с преобразованием ... transform: scale3d (.3, .3, .3) перевести (x, y), любое другое преобразование – Gacci

-1

Вы можете просто добавить max-height: 90% в номер .modal-box. 90% немного произвольны, но вы получите некоторое дополнение к модальному.

+0

Я действительно хочу отобразить полный контент на моей странице tho и предпочитаю не использовать 'overflow' –

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