Próbuję zmienić rozmiar formy modalnej, a raczej - pozwolić jej odpowiadać na treści, które tam renderuję. Używam go do renderowania formularza i wolałbym zająć się przewijaniem w razie potrzeby.
Formularz, który renderuję, prawdopodobnie potrzebuje kolejnych 50 pikseli - po prostu brakuje przycisków.
Próbowałem więc zastąpić style .modal w moim pliku application.css.scss (przy użyciu Railsów 3.2), ale dekleracje max-height i overflow wydają się być nadpisane.
jakieś pomysły?
twitter-bootstrap
Ciasto
źródło
źródło
Odpowiedzi:
Miałem dokładnie ten sam problem, możesz spróbować:
Jeśli zauważysz, że paski przewijania pojawiają się tylko w sekcji treści okna dialogowego modalnego, oznacza to, że należy dostosować maksymalną wysokość tylko ciała.
źródło
w Bootstrap 3:
źródło
#modal_ID .modal-dialog { width: 800px }
Musisz upewnić się, że znajduje się on w elemencie #myModal .modal-body, a nie tylko #myModal (kilka osób popełnia ten błąd), a także możesz chcieć dostosować się do zmiany wysokości, zmieniając marginesy modalne.
źródło
Używając nowego pomiaru CSS3 'vh' (lub 'vw' dla szerokości) (który ustawia wysokość jako ułamek portu widoku) użyj:
W ten sposób, jeśli używasz responsywnego frameworka, takiego jak Bootstrap, możesz zachować ten projekt również w swoich modach.
źródło
Mieszając dwie metody szerokości i wysokości, masz niezłą sztuczkę:
CSS:
JQuery:
To jest ten, którego używam. Naprawia problemy z marginesami i paskami przewijania zarówno w zakresie szerokości, jak i wysokości, ale nie zmienia rozmiaru modalu, aby pasował do jego zawartości.
Mam nadzieję, że pomogłem!
źródło
Korzystanie z klasy CSS (możesz też nadpisać styl - niezalecane):
(html)
(css)
źródło
Mam odpowiedź ... chodzi o to, że nadpisałeś również atrybut max-height, aby modal bootstrap mógł zostać zmieniony poza limit wysokości 500px
źródło
Bootstrap Duży model
Mały model Bootstrap
źródło
Po prostu ustaw „.modal-body” wysokość: 100% automatycznie dostosuje wysokość do treści i umieści „max-height” zgodnie z Twoim ekranem ...
źródło
Czy wypróbowałeś parametr rozmiaru:
Opcjonalne rozmiary
Modały mają dwa opcjonalne rozmiary, dostępne za pośrednictwem klas modyfikatorów, które można umieścić w oknie dialogowym .modal.
Jeśli chcesz czegoś innego, zaktualizuj plik bootstarp.css
źródło
Dla Boostrap> 4 to zadziałało dla mnie:
bardziej zaawansowana wersja:
tutaj jest kod:
https://codepen.io/AlfredoMoralesPinzon/pen/xyVOaK
źródło
Zakładając, że twój modal ma identyfikator
modal1
następującego CSS, zwiększyłby wysokość modalu i wyświetliłby wszelkie przepełnienia.źródło
Wypróbowałem kilka z powyższych, aby ustawić określone rozmiary szerokości i wysokości (aby wyświetlić obraz w trybie modalnym) i ponieważ żadne z powyższych nie pomogło mi, zdecydowałem się zastąpić style i dodałem następujące elementy do głównego elementu <div>, który ma class = "modal hide fade in" w nim: tj. dodano szerokość do znacznika stylu dla tła modalu.
a następnie dodał następujące tagi „style” do treści modalnej:
teraz działa jak urok, wyświetlam obraz i teraz pasuje idealnie.
źródło
To zadziałało dla mnie:
Zauważ, że w moim przypadku mam zagnieżdżone modale, z których każdy ma kontrolki, które wymagają różnych wysokości, gdy przełączam wyświetlanie formantu wewnątrz zagnieżdżonego modalu , więc nie mogłem zastosować maksymalnej wysokości , zamiast tego wysokość: 100% działa dla mnie dobrze.
źródło
Nie zapomnij o opcjonalnych klasach ładowania początkowego
modal-lg
imodal-sm
jeśli chcesz zachować ramy responsywne. I dodaj poprawkę pod formularzem, która może pomóc w zależności od twojej struktury.źródło
Niedawno próbowałem tego i uzyskałem poprawny wynik: mam nadzieję, że to będzie pomocne
To dostosuje wysokość twojego modelu.
źródło
Oto kolejna prosta metoda na zwiększenie rozmiaru modułu ładowania początkowego:
Szerokość modalu można określić jako procent ekranu. W powyższym przykładzie ustawiłem go na 80% szerokości mojego ekranu.
Poniżej znajduje się działający przykład tego samego:
źródło