Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

 
Reply to this topicStart new topic
> [css] Hover odnosnika z pozycjonowaniem absolutnym, nie działa w operze
krzywy36
post
Post #1





Grupa: Zarejestrowani
Postów: 370
Pomógł: 43
Dołączył: 1.12.2007
Skąd: Kędzierzyn Koźle

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


Tytuł raczej dużo nie mówi, ale chodzi o to, że chcę uzyskać efekt przyciemniania obrazków po najechaniu na nie kursorem.
Założenie było takie, że wstawiam w diva odnośnik i obrazek, odnośnik pozycjonuję absolutnie, szerokość i wysokość ustawiam na odpowiadające wartości z obrazka i przy najechaniu kursorem za pomocą :hover, ustawiam tło odnośnika na półprzezroczysty png. Wszystko działa pięknie w chrome i firefoxie, problem występuje w operze, tam odnośnik jest cały czas jakby pod obrazkiem i w ogóle nie można w niego kliknąć więc efekt hover też się nie aktywuje. Jakieś pomysły jak to naprawić? z-index nie pomaga.

Edit: jeśli nie będzie możliwości naprawić tego w css, to może jakieś rozwiązanie w js?

Ten post edytował krzywy36 1.05.2011, 15:14:16
Go to the top of the page
+Quote Post
Bags_Bunny
post
Post #2





Grupa: Zarejestrowani
Postów: 262
Pomógł: 39
Dołączył: 12.04.2004

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


O ile dobrze zrozumiałem o co Ci chodzi, może po prostu ustaw czarne tło pod obrazkiem i zmieniaj opacity?

Ten post edytował Bags_Bunny 1.05.2011, 16:25:16
Go to the top of the page
+Quote Post
krzywy36
post
Post #3





Grupa: Zarejestrowani
Postów: 370
Pomógł: 43
Dołączył: 1.12.2007
Skąd: Kędzierzyn Koźle

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


opacity działa we wszystkich przeglądarkach?

Edit: tak czy siak, nie rozwiązuje to do końca mojego problemu, bo nie napisałem w pierwszym poście, ale na innym obrazku chcę zrobić to samo, z tym że w dodatku ma się wyświetlać na nim tekst.

Ten post edytował krzywy36 1.05.2011, 17:32:14
Go to the top of the page
+Quote Post
r4xz
post
Post #4





Grupa: Zarejestrowani
Postów: 673
Pomógł: 106
Dołączył: 31.12.2008

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


ciągle opacity rozwiązuje twój problem.
Go to the top of the page
+Quote Post
MrCoody
post
Post #5





Grupa: Zarejestrowani
Postów: 61
Pomógł: 12
Dołączył: 1.05.2011
Skąd: Kielce

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


Spróbuj obrazek w CSSie
NP.:
  1. <div id="obrazek"><a href="#">Odnośnik</a></div>


KOD CSS 3 - box-shadow:

#obrazek {; width: 400px; height: 300px; position: absolute; top: 0px; left: 100px; text-align: center;}

#obrazek:hover { width: 400px; height: 300px; position: absolute; top: 0px; left: 100px; text-align: center; -moz-box-shadow: inset 100px 100px 100px #999;-0-box-shadow: inset 100px 100px 100px #999;-webkit-box-shadow: inset 100px 100px 100px #999;box-shadow: inset 100px 100px 100px #999;}

a {text-decoration:none; color: green; font-weight: bold; cursor:default;}

a:hover {color: lime;}


Kombinuj z tym box-shadow żeby był efekt przejścia możesz zastosować też funkcję "transition"
Przykład :
-webkit-transition:All 0.3s ease-in-out;
-moz-transition:All 0.3s ease-in-out;
-o-transition:All 0.3s ease-in-out;


Ten post edytował MrCoody 1.05.2011, 17:46:07
Go to the top of the page
+Quote Post
krzywy36
post
Post #6





Grupa: Zarejestrowani
Postów: 370
Pomógł: 43
Dołączył: 1.12.2007
Skąd: Kędzierzyn Koźle

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


@r4xz w drugim wypadku opacity nie rozwiązuje mojego problemu, wrzucę przykładowy kod, żeby to zobrazować:
  1. <div id="photo">
  2. <a href="#">Przykladowy tekst</a>
  3. <img src="#" />
  4. </div>

  1. #photo
  2. {
  3. position: relative;
  4. height: 400px;
  5. width: 400px;
  6. }
  7. #photo a
  8. {
  9. position: absolute;
  10. left: 0;
  11. top: 0;
  12. bottom: 0;
  13. right: 0;
  14. color: transparent;
  15. }
  16. #photo a:hover
  17. {
  18. color: #fff;
  19. }


o ile w przypadku zwykłego obrazka mogę zastosować hover dla samego img to w tym wypadku, żeby pokazać tekst muszę zrobić hover dla <a>, no a jak już pisałem <a> w oprzerze jest wyświetlane jakby pod obrazkiem.

@MrCoody, css3 narazie sobie odpuszcze z wiadomych powodów.

Ten post edytował krzywy36 1.05.2011, 18:15:09
Go to the top of the page
+Quote Post
MrCoody
post
Post #7





Grupa: Zarejestrowani
Postów: 61
Pomógł: 12
Dołączył: 1.05.2011
Skąd: Kielce

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


dodaj może #photo: hover np.:
  1. #photo:hover
  2. { background: black;
  3. position: relative;
  4. height: 400px;
  5. width: 400px;
  6. }



Nak najedziesz na obrazek to tło się zmieni na czarne (IMG:style_emoticons/default/biggrin.gif)

ALBO :
  1. img:hover
  2. { background: black;
  3. position: relative;
  4. height: 400px;
  5. width: 400px;
  6. }


Jak nie działa to nie wiem o co Ci chodzi (IMG:style_emoticons/default/smile.gif)

Ten post edytował MrCoody 1.05.2011, 19:00:31
Go to the top of the page
+Quote Post
Bags_Bunny
post
Post #8





Grupa: Zarejestrowani
Postów: 262
Pomógł: 39
Dołączył: 12.04.2004

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


Daj #photo czarne tło, wrzuć obrazek i tekst w dodatkowy div i rób hover dla tego dodatkowego diva.
Go to the top of the page
+Quote Post
MrCoody
post
Post #9





Grupa: Zarejestrowani
Postów: 61
Pomógł: 12
Dołączył: 1.05.2011
Skąd: Kielce

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


mogło by być też w js np.:

w headzie :
[JAVASCRIPT] pobierz, plaintext
  1. <script type="text/javascript">
  2. function startIt() {
  3. var oImg = document.getElementById('image');
  4. oImg.style.bgcolor = 'black';
  5. }
  6.  
  7. function stopIt() {
  8. var oImg = document.getElementById('image');
  9. oImg.style.bgcolor = '';
  10. }
  11. </script>
[JAVASCRIPT] pobierz, plaintext


i kod w htmlu :

  1. <img onmouseover="startIt()" onmouseout="stopIt()" id="image" src="zdjecie.jpg" />


POMOGŁEM (IMG:style_emoticons/default/questionmark.gif)

Ten post edytował MrCoody 2.05.2011, 17:48:33
Go to the top of the page
+Quote Post

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

 



RSS Aktualny czas: 22.08.2025 - 16:25