• Najnowsze pytania
  • Bez odpowiedzi
  • Zadaj pytanie
  • Kategorie
  • Tagi
  • Zdobyte punkty
  • Ekipa ninja
  • IRC
  • FAQ
  • Regulamin
  • Książki warte uwagi

Okno menu po kliknieciu buttona - jak zrobiono

Ultraszybki serwer VPS NVMe BIZNES
0 głosów
109 wizyt
pytanie zadane 17 października 2017 w HTML i CSS przez Bartlomiej Bywalec (2,480 p.)

Siema mam pytanie jak zrobić taki bajer że po kliknieciu buttona wyskakuje okienko z menu

 

3 odpowiedzi

0 głosów
odpowiedź 17 października 2017 przez zgrybus Pasjonat (20,260 p.)
wybrane 17 października 2017 przez Bartlomiej
 
Najlepsza
Masz sobie buttonika z pozycją relatywną. Masz menu, które odwołuje się do jego pozycji relatywnej i dajesz jej absolutna z bottom: -25px ( powiedzmy ). Przy okazji nadajesz jej display: none ( możesz również max-height: 0; opacity: 0; visibilty: hidden; overflow: hidden ). Po kliknięciu w button, nadajesz menu klasę active w której jest display: block lub max-height: (ileś tam px Ci potrzebnych - powiedzmy 300px ); opacity: 1; visibility: visible;
proszę bardzo
komentarz 17 października 2017 przez Bartlomiej Bywalec (2,480 p.)
Zrobiłem coś takiego :

https://codepen.io/anon/pen/Jrewxq?editors=1111

Może tak być? jakies uwagi?:D

Pytanie jeszcze jedno jak zrobić ze po kliknieciu gdziekolwiek niz na menu zniknie ta klasa(zniknie menu)?
komentarz 17 października 2017 przez zgrybus Pasjonat (20,260 p.)
https://codepen.io/anon/pen/mBQvwm
Zamiast contains, możesz użyc toggle i zmniejszasz ilość linijek.

Zmieniłem trochę twojego pena, przenalizuj. Jeśli masz pytania wal śmiało.
komentarz 17 października 2017 przez Bartlomiej Bywalec (2,480 p.)
Dzieki! rozumiem, mam tylko jedno, ta opcja :

 

window.addEventListener('click', function(evt){
  let target = evt.target;
  if(target !== btn && menu.classList.contains('active')) {
    menu.classList.remove('active');
  }

 

Jest spoko, ale ma 1 wadę, jeśli kliknie sie w jakiekolwiek pole w menu (np nie trafi sie w hrefa), to i tak sie zamknie menu, da rade zrobić tak zeby cale pole menu bylo klikalne i by sie nie zamykalo a dopiero po kliknieciu poza menu??
komentarz 17 października 2017 przez zgrybus Pasjonat (20,260 p.)
wydaje mi się, że trzeba sprawdzić, czy target należy do ul, tzn. czy ul jest rodzicem targeta lub jest nim w ogóle - zaraz zobacze. Po próbuj też :)
komentarz 17 października 2017 przez zgrybus Pasjonat (20,260 p.)
dodałem :P
komentarz 17 października 2017 przez Bartlomiej Bywalec (2,480 p.)
Dzieki wielkie :D tez znalazlem motyw z dodaniem drugiej klasy do display block:

.active, menu:hover {
  display: block;
}

Wtedy po kliknieciu gdzies w menu nie zamyka sie, lecz wada jest taka ze jak klikne gdzies w menu (nietrafie) i sciagne kursor za obszar menu, to znika :)
0 głosów
odpowiedź 17 października 2017 przez mtk3d Nałogowiec (40,000 p.)
JavaScript

W CSS ustawiasz to okienko tak jak chcesz i ukrywasz je przez JS, display:none.
0 głosów
odpowiedź 17 października 2017 przez Konrad Fx Gaduła (4,610 p.)
Jeden z prostych sposobów ;)

https://youtu.be/LZhqZYVSAf0

Na jego podstawie możesz srobić coś pod swoje wymagania.

 

Pozdrawiam Fx

Podobne pytania

0 głosów
1 odpowiedź 129 wizyt
0 głosów
2 odpowiedzi 72 wizyt
+2 głosów
8 odpowiedzi 516 wizyt
Porady nie od parady
Komentarze do pytań nie służą do odpowiadania, od tego jest wydzielona sekcja odpowiedzi. Funkcją komentarzy jest natomiast możliwość uzyskania dodatkowych informacji na temat samego posta.
Ciekawy innych porad? Odwiedź tę stronę!

44,190 zapytań

83,990 odpowiedzi

167,204 komentarzy

21,133 pasjonatów

Przeglądających: 142
Pasjonatów: 5 Gości: 137

Motyw:

Akcja Pajacyk

Pajacyk od wielu lat dożywia dzieci. Pomóż klikając w zielony brzuszek na stronie. Dziękujemy! ♡

Oto dwie polecane książki warte uwagi. Pełną listę znajdziesz tutaj.

...