Witaj Gościu! ( Zaloguj | Rejestruj )

Forum PHP.pl

> [css] Specyficzne ukrywanie/pokazywanie elementów., z użyciem :hover.
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%)
-----


Mam mały problem i nie mam pomysłu na jego rozwiązanie, sprawa wygląda tak:
mam miniaturki zdjęć wyświetlane w taki sposób
  1. <a href="sciezka_do_zdjecia"><img src="sciezka_do_miniaturki" /></a>

chcę do każdej miniaturki dodać linki ("usuń"), które miały by być wyświetlane przy dolnej krawędzi miniaturki wewnątrz niej po najechaniu na obrazek.
Inaczej mówiąc, mam powiedzmy miniaturkę 100x60px, po najechaniu na nią pojawia się "na" obrazku link "usuń" tak aby miniaturka nie zwiększyła swoich wymiarów.
Jakieś pomysły jak zrobić to w css bez użycia js? Miniaturka nie będzie miała konkretnych wymiarów więc miło by było gdyby rozwiązanie działało niezależnie od nich.
Go to the top of the page
+Quote Post
 
Start new topic
Odpowiedzi (1 - 3)
mat-bi
post
Post #2





Grupa: Zarejestrowani
Postów: 690
Pomógł: 92
Dołączył: 6.02.2011

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


Raczej tego nie da się zrobić w CSS, tak mi się wydaje
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%)
-----


jednak się da (IMG:style_emoticons/default/wink.gif) dla potomnych:
po pierwsze, wszystko obejmuję divem i dodaję mój odnośnik do usuń
  1. <div class="thumb">
  2. <a href="#"><img src="#" /></a>
  3. <a class="delete">usun</a>
  4. </div>

obejmującemu divowi ustawiam pozycjonowanie relatywne(żeby za chwile móc pozycjonować "usun" absolutnie) i wielkość czcionki na 0,
linkowi .delete ustawiam pozycjonowanie absolutne i wartość bottom na 0,
żeby nie było problemów z <img> w <a> musiałem nadać display: block (dla img),
teraz tylko przy :hover dla obejmującego diva zwiększam czcionkę:
  1. .thumb
  2. {
  3. position: relative;
  4. font-size: 0;
  5. }
  6. .thumb .delete
  7. {
  8. position: absolute;
  9. bottom: 0;
  10. }
  11. .thumb img
  12. {
  13. display: block;
  14. }
  15. .thumb:hover
  16. {
  17. font-size: 15px;
  18. }

efekt jest dokładnie taki jak chciałem, waliduje się (xhtml 1.0 strict) i działa (conajmniej) w chromium 10 (IMG:style_emoticons/default/smile.gif) jutro sprawdzę inne przeglądarki.

Edit: w operze 11 działa, w epiphany widać bardzo mały tekst odnośnika (widocznie epiphany nie akceptuje font-size: 0)

Ten post edytował krzywy36 28.03.2011, 23:53:48
Go to the top of the page
+Quote Post
ixpack
post
Post #4





Grupa: Zarejestrowani
Postów: 248
Pomógł: 55
Dołączył: 1.06.2010
Skąd: mam to wiedzieć?

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


Dam Ci mój kod - i go sobie przerób (IMG:style_emoticons/default/wink.gif)

Zasada działania prosta: mamy div, w divie mamy kolejne (IMG:style_emoticons/default/wink.gif) a te są linkami, linki mają swój background, w wypadku hover - przesówamy background (IMG:style_emoticons/default/wink.gif) oczywiście możesz to uprościć do 1go linka, pokaż jako block, ustaw background np: masz obrazek widoczny (link) 100x100 - to tworzysz background 200x100, ustawiasz background o pozycji 0 0 - czyli bez przesunięcia, link o rozmiarach 100x100 pokaze część obrazka - w wypadku hover ustawiamy backgrount -100 0 - czyli przesuwamy go do góry o 100 jednostek (IMG:style_emoticons/default/wink.gif)


  1. #hp_ {
  2. position: relative;
  3. padding: 0;
  4. width:975px;
  5. height:651px;
  6. }
  7.  
  8. #hp_ div {
  9. display: block;
  10. position: absolute;
  11. list-style: none;
  12. margin: 0;
  13. padding: 0;
  14. }
  15.  
  16. #hp_ a {
  17. display: block;
  18. text-indent: -9999px;
  19. text-decoration: none;
  20. outline: none;
  21. cursor: default;
  22. }
  23.  
  24. #hp_top {
  25. top:0;
  26. left:0;
  27. width:975px;
  28. height:375px;
  29. background: url("../css/hp_.jpg") 0 0 no-repeat;
  30. z-index:1;
  31. }
  32.  
  33. #hp_top a{
  34. width:975px;
  35. height:295px;
  36. }
  37.  
  38. #hp_top_b {
  39. top:290px;
  40. left:330px;
  41. z-index:2;
  42. }
  43.  
  44. #hp_top_b a {
  45. width:585px;
  46. height:80px;
  47. background: url("../css/hp_.jpg") -330px 290px no-repeat;
  48. }
  49.  
  50. #hp_middle {
  51. top:383px;
  52. left:0;
  53. z-index:1;
  54. }
  55.  
  56. #hp_middle a {
  57. width:975px;
  58. height:100px;
  59. background: url("../css/hp_.jpg") 0px -750px no-repeat;
  60. }
  61.  
  62. #hp_middle_b {
  63. top:483px;
  64. left:0;
  65. z-index:2;
  66. }
  67.  
  68. #hp_middle_b a {
  69. width:975px;
  70. height:50px;
  71. background: url("../css/hp_.jpg") 0px -850px no-repeat;
  72. }
  73.  
  74. #hp_bottom_left {
  75. top:536px;
  76. left:0;
  77. z-index:2;
  78. }
  79.  
  80. #hp_bottom_left a {
  81. width:490px;
  82. height:115px;
  83. background: url("../css/hp_.jpg") 0 -1050px no-repeat;
  84. }
  85.  
  86. #hp_bottom_right {
  87. top:536px;
  88. left:490px;
  89. z-index:2;
  90. }
  91.  
  92. #hp_bottom_right a {
  93. width:485px;
  94. height:115px;
  95. background: url("../css/hp_.jpg") -490px -1050px no-repeat;
  96. }
  97.  
  98. #hp_top a:hover {
  99. cursor: pointer;
  100. background: url("../css/hp_.jpg") 0 -375px no-repeat;
  101. }
  102.  
  103. #hp_top_b a:hover {
  104. cursor: pointer;
  105. background: url("../css/hp_.jpg") -330px -665px no-repeat;
  106. }
  107.  
  108. #hp_middle a:hover {
  109. cursor: pointer;
  110. background: url("../css/hp_.jpg") 0px -900px no-repeat;
  111. }
  112.  
  113. #hp_middle_b a:hover {
  114. cursor: pointer;
  115. background: url("../css/hp_.jpg") 0px -1000px no-repeat;
  116. }
  117.  
  118. #hp_bottom_left a:hover {
  119. cursor: pointer;
  120. background: url("../css/hp_.jpg") 0 -1165px no-repeat;
  121. }
  122.  
  123. #hp_bottom_right a:hover {
  124. cursor: pointer;
  125. background: url("../css/hp_.jpg") -490px -1165px no-repeat;
  126. }
  127.  

  1. <div id="hp_">
  2. <div id="hp_top"><a href="./?page=1&ref=14">Elisa Cavaletti</a></div>
  3. <div id="hp_top_b"><a href="./?page=sign_in&vp=vp">Join VIP Club</a></div>
  4. <div id="hp_middle"><a href="./?page=6">Mother&acute;s Day</a></div>
  5. <div id="hp_middle_b"><a href="http://www." target="_new">Mother&acute;s Day</a></div>
  6. <div id="hp_bottom_left"><a href="./?page=1&ref=3">Arianna</a></div>
  7. <div id="hp_bottom_right"><a href="./?page=1&ref=17">Lauren Vidal</a></div>
  8. </div>
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: 19.09.2025 - 01:32