Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [css] div i podmiana obrazka tła
Forum PHP.pl > Forum > Po stronie przeglądarki > CSS
SzymaneK
Witam z CSS'ami i DVIami dopiero zaczynam przygodę ale trafiłem na przeszkodzę z którą, sam nie mogę sobie poradzić. Dla Was to pewni będzie banał a dla mnie wybawienie smile.gif

mianowicie mam divy

  1. <div id="menu"><p class="menu">menu 1</p></div>
  2. <div id="menu"><p class="menu">menu 2</p></div>
  3. .
  4. .
  5. .

chciałbym aby po najechaniu myszką na danego diva zmieniało się jego tło próbowałem z "hover" ale wyczytałem że to już jest staroć i nie wszędzie działa np IE sad.gif


  1. #menu {
  2. background-image: url(img/menu1.gif);
  3. height: 30px;
  4. width: 181px;
  5. margin: 0px;
  6. padding: 0px;
  7. }


z góry dziękuję SzymaneK
piotrooo89
zrobisz to albo w js albo za pomocą css w następujący sposób: daj do tego div'a <a href> nadaj mu display: block, i później dodaj :hover'a na tego linka... inaczej IE nie będzie Ci czytał tego ponieważ on pseudo klasę :hover obsługuje tylko na linkach.
erix
Cytat
inaczej IE nie będzie Ci czytał tego ponieważ on pseudo klasę :hover obsługuje tylko na linkach.

behavior: whatever:hover winksmiley.jpg
SzamanGN
Jeszcze mała sugestia:
napisałeś
  1. <div id="menu"><p class="menu">menu 1</p></div>
  2. <div id="menu"><p class="menu">menu 2</p></div>

jeżeli będziesz później chciał się odnieść do elementu (DIV) o id="menu", to odwołasz się do każdego DIV o id="menu", staraj się w takim przypadku używać:
  1. <div id="menu">
  2. <div class="odnosnik_menu">menu 1</div>
  3. <div class="odnosnik_menu">menu 2</div>
  4. </div>

Mam nadzieję, że wiesz o co mi chodzi?
SzymaneK
Wielkie dzięki za sugestie...

na razie zrobiłem coś takiego:

  1. <div id="lewa">
  2. <div onmouseover="this.className='menu2';" onmouseout="this.className='menu1';" class="menu1"><a href="#"><p class="menu">jeden</p></a></div>
  3. <div onmouseover="this.className='menu2';" onmouseout="this.className='menu1';" class="menu1"><a href="#"><p class="menu">dwa</p></a></div>
  4. </div>


jak widzisz SzamanGN Twoja sugestia została wcielona, smile.gif w sumie to mi sie nie podobało od początku.

co o tym sądzicie ? może BYK?

pzdr SzymaneK
erix
Ale po kiego grzyba tak kombinujesz?

Użyj zwyczajnie pseudoklas :hover, tylko dla IE podepnij whatever:hover... (Google, jeśli nie wiesz, o czym mówię)
SzymaneK
Cytat(erix @ 30.12.2008, 18:01:36 ) *
(Google, jeśli nie wiesz, o czym mówię)


no gdybym znalazł to dzięki Google to nie zawracał bym d...y tutaj.
Albitos
SzamanGN: Nie pobierze wszystkie o id #hover, tylko pobierze pierwsze wystąpienie. Przynajmniej w JS, nie wiem jak to się ma do CSS.

SzymaneK: Generalnie zasada jest taka, że jest wiele elementów posiadających daną klasę i tylko jeden posiadający dane id. IDentyfikatory z reguły są unikalne smile.gif.
erix
~SymaneK, ja jakoś znalazłem: http://www.xs4all.nl/~peterned/csshover.html tongue.gif

Rozwiązanie sprawdzone, ale jeden warunek: elementy nie mogą być dodawane dynamicznie (np. via innerHTML).
To jest wersja lo-fi głównej zawartości. Aby zobaczyć pełną wersję z większą zawartością, obrazkami i formatowaniem proszę kliknij tutaj.
Invision Power Board © 2001-2025 Invision Power Services, Inc.