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

Zniknięcie tekstu pod wysuwanym menu - jak to zrobić?

Object Storage Arubacloud
+1 głos
365 wizyt
pytanie zadane 28 września 2020 w HTML i CSS przez Kubs Mądrala (5,190 p.)

Witajcie,

mam tekst oraz hamburger menu:

<div class="content">
   <p>Tekst</p>
</div>


 <div class="navigation">
   <ul class="navigation__list">
     <li class="navigation__item">contact</li>
   </ul>
 </div>

 

W main.js obsługuje ten hamburger:

const nav = document.querySelector('.navigation');

const handleClick = () => {
    hamburger.classList.toggle('hamburger--active');
    .......
}

   .......

 

Jak zrobić, żeby po naciśnięciu menu i wysunięciu się contact, zniknął pod spodem Tekst z tag-a <p>? I adekwatnie pojawił się ponownie, gdy zamknę menu z kontaktem.

Używam przezroczystości dlatego chcę, żeby tent Tekst zniknął bo jest widoczny pod tym wysuniętym menu. 

1 odpowiedź

0 głosów
odpowiedź 28 września 2020 przez VBService Ekspert (252,740 p.)
wybrane 28 września 2020 przez Kubs
 
Najlepsza
.content p {
  opacity: 1;
  transition: opacity 1s linear;
}
const nav = document.querySelector('.navigation');
const content = document.querySelector('.content p');
 
const handleClick = () => {
  hamburger.classList.toggle('hamburger--active');
    .......
  content.style.opacity = 0; // content.style.opacity = 1;
  lub 
  content.style.visibility = 'hidden'; // content.style.visibility: 'visible';
}

 

komentarz 28 września 2020 przez ScriptyChris Mędrzec (190,190 p.)

content.style.opacity = 0; // content.style.opacity = 1;

  lub

  content.style.visibility = 'hidden'; // content.style.visibility: 'visible';

}

W tym przypadku lepiej jest JS-em toggle'ować klasę dla CSS niż ustawiać styl inline - tak jak jest to robione linijkę wyżej.

komentarz 28 września 2020 przez Kubs Mądrala (5,190 p.)
To jak to dokładnie poprawić?
komentarz 28 września 2020 przez ScriptyChris Mędrzec (190,190 p.)

Analogicznie jak robisz z klasą hamburger--active na zmiennej hamburger - z tym, że na osobnej klasie, której CSS będzie zmieniać opacity lub visibility.

komentarz 28 września 2020 przez Kubs Mądrala (5,190 p.)

Musiałem dodać jeszcze jeden tekst - taka kosmetyka, i na razie wygląda to tak


<div class="description">
  <h2 id="text_one">Tekst1</h2>
  <p id="text_two">Tekst2</p>
</div>

w JS

const description = document.querySelector('.description');

const handleClick = () => {
   hamburger.classList.toggle('hamburger--active');
  
   description.classList.toggle('description--active');
   
}

i CSS

.description--active{
  opacity: 1;
  transition: opacity 1s linear;
}

 

I nie działa.

komentarz 28 września 2020 przez ScriptyChris Mędrzec (190,190 p.)

Co konkretnie nie działa: dodanie klasy, czy coś innego? Ostylowałeś klasę description--active, która ma opacity równe 1, a czy ostylowałeś klasę description żeby miała opacity równe 0? Tranzycja odbywa się pomiędzy dwoma stanami - a Ty ostylowałeś tylko jeden z nich.

1
komentarz 28 września 2020 przez VBService Ekspert (252,740 p.)
.description {
  opacity: 1;
  transition: opacity 1s linear;
}
.description--active {
  opacity: 0;
}
<div class="description">
  <h2 id="text_one">Tekst1</h2>
  <p id="text_two">Tekst2</p>
</div>

 

1
komentarz 28 września 2020 przez Kubs Mądrala (5,190 p.)
Poprawiłem. Działa!

Wy to, po prostu, jesteście jak Ci magicy. Tylko używacie innych rekwizytów! :)
1
komentarz 28 września 2020 przez Kubs Mądrala (5,190 p.)

Dzięki serdecznie :)

Po poprawkach zasugerowanych przez ScriptyChris wszystko działa.

Podobne pytania

0 głosów
1 odpowiedź 126 wizyt
0 głosów
1 odpowiedź 137 wizyt
pytanie zadane 12 listopada 2019 w Nasze projekty przez KrzysztofKord Nowicjusz (120 p.)
+2 głosów
1 odpowiedź 964 wizyt
pytanie zadane 16 stycznia 2016 w JavaScript przez Jakub98 Nowicjusz (200 p.)

92,555 zapytań

141,402 odpowiedzi

319,539 komentarzy

61,938 pasjonatów

Motyw:

Akcja Pajacyk

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

Oto polecana książka warta uwagi.
Pełną listę książek znajdziesz tutaj.

Akademia Sekuraka

Kolejna edycja największej imprezy hakerskiej w Polsce, czyli Mega Sekurak Hacking Party odbędzie się już 20 maja 2024r. Z tej okazji mamy dla Was kod: pasjamshp - jeżeli wpiszecie go w koszyku, to wówczas otrzymacie 40% zniżki na bilet w wersji standard!

Więcej informacji na temat imprezy znajdziecie tutaj. Dziękujemy ekipie Sekuraka za taką fajną zniżkę dla wszystkich Pasjonatów!

Akademia Sekuraka

Niedawno wystartował dodruk tej świetnej, rozchwytywanej książki (około 940 stron). Mamy dla Was kod: pasja (wpiszcie go w koszyku), dzięki któremu otrzymujemy 10% zniżki - dziękujemy zaprzyjaźnionej ekipie Sekuraka za taki bonus dla Pasjonatów! Książka to pierwszy tom z serii o ITsec, który łagodnie wprowadzi w świat bezpieczeństwa IT każdą osobę - warto, polecamy!

...