Czy istnieje sposób na zmianę animacji okna modalnego Twitter Bootstrap z efektu przesunięcia w dół na zanikanie lub po prostu wyświetlanie bez suwaka? Przeczytałem dokumentację tutaj:
http://getbootstrap.com/javascript/#modals
Ale nie wspominają o żadnych opcjach zmiany efektów slajdów ciała modalnego.
Modały używane przez bootstrap używają CSS3 do dostarczania efektów i można je usunąć, eliminując odpowiednie klasy z modułu div kontenera modali:
Jak widzisz, ten modal ma klasę
.fade
, co oznacza, że jest ustawiony na zanikanie i.in
, co oznacza, że będzie się wsuwał. Po prostu usuń klasę związaną z efektem, który chcesz usunąć, który w twoim przypadku jest po prostu.in
klasą.Edycja: Właśnie uruchomiłem kilka testów i wygląda na to, że tak nie jest,
.in
klasa jest dodawana przez javascript, chociaż możesz zmodyfikować zachowanie slideDown za pomocą css w następujący sposób:Próbny
źródło
modal.fade, .modal-backdrop.fade
etc ...Jeśli wolisz, aby modalne pojawiały się zamiast wsuwać się (dlaczego w ogóle się to nazywa
.fade
?), Możesz nadpisać klasę w swoim pliku CSS lub bezpośrednio wbootstrap.css
ten sposób:Jeśli nie chcesz żadnego efektu, po prostu usuń
fade
klasę z klas modalnych.źródło
in
klasa została dodana przez Bootstrap.jsUważam, że większość z tych odpowiedzi dotyczy bootstrapa 2. Napotkałem ten sam problem z bootstrapem 3 i chciałem podzielić się moją poprawką. Podobnie jak moja poprzednia odpowiedź na bootstrap 2, to nadal spowoduje zanikanie przezroczystości, ale NIE spowoduje przejścia slajdów.
Możesz zmienić plik modals.less lub theme.css, w zależności od przepływu pracy. Jeśli nie spędziłeś czasu z mniejszą ilością, gorąco polecam.
za mniej, znajdź następujący kod w
MODALS.less
następnie zmień
-25%
na0%
Alternatywnie, jeśli używasz tylko CSS, znajdź następujące informacje w
theme.css
:a następnie zmienić
-25%
się0%
.źródło
Rozwiązałem to, nadpisując domyślne
.modal.fade
style w moim własnym arkuszu stylów LESS:Zachowuje to animację pojawiania się / zanikania, ale usuwa animację przesunięcia w górę / w dół.
źródło
Znalazłem najlepsze rozwiązanie, które usuwa slajd, ale pozostawia zanikanie, polega na dodaniu następującego pliku css do wybranego pliku css, który jest wywoływany po pliku bootstrap.css
źródło
Nie podobał mi się też efekt slajdu. Aby to naprawić, wszystko, co musisz zrobić, to uczynić ten sam
top
atrybut zarówno dla .modal.fade, jak i modal.fade.in. Możesz także zdjąćtop 0.3s ease-out
w przejściach, ale pozostawienie go nie zaszkodzi. Podoba mi się to podejście, ponieważ działa zanikanie / wyciszanie, po prostu zabija slajd .Jeśli szukasz odpowiedzi na bootstrap 3, zajrzyj tutaj
źródło
możesz również nadpisać plik bootstrap.css, usuwając po prostu „top: -25%;”
po usunięciu modal będzie po prostu pojawiał się i znikał bez animacji slajdu.
źródło
Po prostu usuń klasę fade i jeśli chcesz, aby więcej animacji było wykonywanych na Modalu, po prostu użyj klas animate.css w swoim Modalu.
źródło
Pracuję z bootstrapem 3 i wtyczką modalną Durandal JS 2. To pytanie było na górze wyników Google, a ponieważ żadna z powyższych odpowiedzi nie działa, pomyślałem, że podzielę się swoim rozwiązaniem z przyszłymi odwiedzającymi.
Zastępuję domyślny kod Bootstrap Less tym w moim własnym less:
W ten sposób pozostaje mi tylko efekt fade, a nie slideDown.
źródło
źródło
Pytanie było jasne: usuń tylko slajd: Oto jak to zmienić w Bootstrap v3
W modals.less skomentuj instrukcję tłumaczenia:
źródło
spójrz na http://quickrails.com/twitter-bootstrap-modal-how-to-remove-slide-down-effect-but-leaves-the-fade/
źródło
Chciałem to zaktualizować. Większość z was nie ukończyła tego wydania. Używam Bootstrap 3. żadna z powyższych poprawek nie zadziałała.
aby usunąć efekt slajdu, ale zachować zanikanie. Przeszedłem do bootstrap css i (zauważyłem następujące selektory) - to rozwiązało problem.
źródło
Poniższy CSS działa u mnie - przy użyciu Bootstrap 3. Musisz dodać ten plik CSS po stylach boostrap -
źródło
po prostu usuń klasę „fade” z klasy modalnej
tak jak
źródło