2015-10-06 2 views
6

Итак, у меня есть мода Bootstrap, которую я создал, и я пытаюсь изменить его с помощью jquery. У меня размер изменяется горизонтально, но если вы попытаетесь изменить размер по вертикали, то, как и содержимое внутри модального, не содержится внутри элемента, который я пытаюсь изменить.Создание Bootstrap modal resizable с jQuery UI issue

Я пробовал использовать свойство 'alsoResize' на .resizable() и включал все div в пределах модального, но, похоже, вызывает другие проблемы.

$('.modal-content').resizable({ 
    alsoResize: ".modal-header, .modal-body, .modal-footer" 
}); 

Вот мой пример: https://jsfiddle.net/p7o2mkg4/

ответ

10

Вы на самом деле все сделали правильно! Но поведение по умолчанию для элементов HTML overflow: visible. Поэтому, если содержимое родительского элемента переполняется, они выходят из модального, и это выглядит не очень хорошо! Итак, вам нужно установить свойство CSS overflow на scroll или hidden, чтобы исправить разрыв на небольшом размере. Попробуйте добавить:

.modal-content.ui-resizable { 
    overflow: scroll; 
} 

Это обеспечит прокрутку при переполнении элемента.

Ссылка на JSFiddle:https://jsfiddle.net/p7o2mkg4/1/

+0

Отлично, спасибо за объяснение! – user3618473

+0

Спасибо! В моем случае я не хотел, чтобы полосы прокрутки отображались, если они не были нужны, поэтому я сделал небольшое обновление для [скрипки] (https://jsfiddle.net/mb0hngdz/) для этого. – mfink

2

Это работает (CSS)

#myModal>div{ 
overflow-y: hidden; 
overflow-x: hidden; 
}