Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> Strzałka - hover
napixowany
post 19.09.2010, 19:28:55
Post #1





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 9.07.2009

Ostrzeżenie: (0%)
-----


Witam, jeśli byłaby taka możliwość chciałbym prosić szanownych Użytkowników o poradę. Mam mały problem dotyczący zmieniania się obrazka po najechaniu myszką. Otóż posiadam taki kod:

  1. <div id="colMenuCenter">
  2. <ol>
  3. <li><a href="#">Wydarzenia</a></li>
  4. </ol>
  5. </div>


oraz

  1. #colMenuCenter li { list-style-type: none; padding: 5px 0px; }
  2. #colMenuCenter li a { width: 156px; height: 14px; margin: 0 auto; padding: 3px 10px; display: block; text-decoration: none; }
  3. #colMenuCenter li a:hover { background-color: #352b2a; color: #feffff; text-decoration: none; }


Oprócz zmiany koloru tła zależałoby mi na tym żeby wstawić przed napisem wydarzenia taką strzałkę dla a:



oraz dla a:hover taką:



Strzałki nr 2 nie widać gdyż jest białego koloru (strzałka nr1 - li.png, strzałka nr2 - li2.png). Czy jest jakaś możliwość zrobienia tego bez ustalania tła jako np. jpg z tą strzałką? Proszę o pomoc. Pozdrawiam i z góry dziękuje.

Ten post edytował napixowany 19.09.2010, 19:31:56
Go to the top of the page
+Quote Post
Blame
post 19.09.2010, 19:30:59
Post #2





Grupa: Zarejestrowani
Postów: 678
Pomógł: 124
Dołączył: 26.09.2009

Ostrzeżenie: (0%)
-----


Możesz skorzystać z pseudoelementu :before, ale nie obsługują go starsze przeglądarki winksmiley.jpg

Ten post edytował Blame 19.09.2010, 19:31:51


--------------------
Go to the top of the page
+Quote Post
napixowany
post 19.09.2010, 20:39:21
Post #3





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 9.07.2009

Ostrzeżenie: (0%)
-----


Rozumiem. A czy mógłbyś mi doradzić w jaki sposób go wykorzystać tak, aby ta strzałka miała dwa kolory? Brązowy i po najechaniu biały?
Go to the top of the page
+Quote Post
devnul
post 19.09.2010, 20:40:23
Post #4





Grupa: Zarejestrowani
Postów: 1 470
Pomógł: 75
Dołączył: 21.09.2005
Skąd: że znowu

Ostrzeżenie: (0%)
-----


nie wiem czy o to Ci chodzi ale dodaj sobie dodatkowy tag - np spam czy coś w obrębie linku
  1. <a href="#"><span>strzałka</span>jakiś tekst</a>

i następnie w stylach włącz jego wyświetlanie dopiero po najechaniu na odnośnik
  1. a span {
  2. visibility: hidden;
  3. }
  4. a:hover span {
  5. visibility: visible;
  6. }


Ten post edytował devnul 19.09.2010, 20:41:20


--------------------
Profesjonaliści są przewidywalni...
strzeż się amatorów...
FL4SHB4CK - imprezy, galerie, lokale
Go to the top of the page
+Quote Post
napixowany
post 19.09.2010, 20:49:46
Post #5





Grupa: Zarejestrowani
Postów: 10
Pomógł: 0
Dołączył: 9.07.2009

Ostrzeżenie: (0%)
-----


Dziękuje za kolejną wskazówkę. Devnul próbowałem Twojego sposobu jednakże przydałby mi się tylko dla li2.png, ale wtedy uzyskałbym taki efekt.

Przed najechaniem:
puste pole Wydarzenia

Po najechaniu:
biała strzałka Wydarzenia

A mi chodzi o uzyskanie takiego efektu. Przed najechaniem
brązowa strzałka (li.png) Wydarzenia

Po najechaniu:
biała strzałka (li2.png) Wydarzenia



Problem został rozwiązany przy użyciu :before. Gorące podziękowania dla Was, a w szczególności dla Blame.
Go to the top of the page
+Quote Post
tr@k
post 19.09.2010, 20:53:29
Post #6





Grupa: Zarejestrowani
Postów: 41
Pomógł: 8
Dołączył: 13.09.2010

Ostrzeżenie: (0%)
-----


Dla a dajesz
Kod
background: url(li.png) no-repeat left

ustawiasz odpowiedni padding-left, żeby tekst nie nachodził na strzałkę. W a:hover zmieniasz obraz na li2.png


--------------------
Web usability
Program Partnerski
Go to the top of the page
+Quote Post
devnul
post 19.09.2010, 20:54:33
Post #7





Grupa: Zarejestrowani
Postów: 1 470
Pomógł: 75
Dołączył: 21.09.2005
Skąd: że znowu

Ostrzeżenie: (0%)
-----


szczerze mówiąc to nie rozumiem czemu nie chcesz użyć background-image bezpośrednio na linku wystarczyło by dla obu stanów zmieniać obrazek albo z w skorzystać ze sprita i wyświetlać tylko odpowiedni fragment obrazka.
Cytat
Dziękuje za kolejną wskazówkę. Devnul próbowałem Twojego sposobu jednakże przydałby mi się tylko dla li2.png, ale wtedy uzyskałbym taki efekt.

zamiast w takim razie chować i ukrywać możesz zmieniać kolor zawartości w span (jeśli to strzałka znakowa) lub tło. :before ma tą zaletę że nie mieszasz warstwy prezentacji z warstwą danych jednak nie będzie to działało poprawnie w nIEktórych przeglądarkach.


--------------------
Profesjonaliści są przewidywalni...
strzeż się amatorów...
FL4SHB4CK - imprezy, galerie, lokale
Go to the top of the page
+Quote Post

Reply to this topicStart new topic
1 Użytkowników czyta ten temat (1 Gości i 0 Anonimowych użytkowników)
0 Zarejestrowanych:

 



RSS Wersja Lo-Fi Aktualny czas: 23.05.2024 - 09:56