Pomoc - Szukaj - Użytkownicy - Kalendarz
Pełna wersja: [CSS][JQUERY] mouseover i display block
Forum PHP.pl > Forum > Przedszkole
corvus606
Mam coś takiego:

[JAVASCRIPT] pobierz, plaintext
  1. $("body").delegate('tr','mouseover mouseleave', function(e){
  2. if (e.type == 'mouseover') {
  3. $(this).addClass('hover');
  4. } else {
  5. $(this).removeClass('hover');
  6. }
  7. });
[JAVASCRIPT] pobierz, plaintext


I coś takiego:

  1. <tr onClick="location.href='costam.php';">
  2. <td><p></p></td>
  3. <td><p></p></td>
  4. </tr>
  5.  
  6. <tr onClick="location.href='costam2.php';">
  7. <td><p></p></td>
  8. <td><p></p></td>
  9. </tr>
  10. </tr>
  11. </table>


I na koniec coś takiego:
  1. tr.hover{
  2. list-style-type: none;
  3.  
  4.  
  5. text-align:center;
  6.  
  7. text-decoration: none;
  8.  
  9.  
  10. width: auto;
  11. display: block;
  12.  
  13. background-color: #FAFAFA;
  14.  
  15. border-style: solid;
  16. border-bottom-color: #333333;
  17. border-right-color: #555555;
  18. border-left-color: #BBBBBB;
  19. border-top-color: #DDDDDD;
  20.  
  21. border-width: 2px;
  22.  
  23.  
  24.  
  25. }


Problem polega na tym, że kiedy nakierowywuję myszką na dany wiersz to z powody display:block tenże wiersz próbuje zająć szerokość pojedynczej komórki wiersza poniżej. Bez display:block z kolei nie działają polecenia css typu border-bottom itd.
Nie potrafię wyjść z tego problemu...
lobopol
1. Nie mam pojęcia z czym masz problem http://jsfiddle.net/zc87s/
2. Na diabła do zmiany stylu potrzebujesz tam jQuery
corvus606
1. Mam jakiś idiotyczny problem - wpisuję to w tej postaci:
  1. <style type="text/css">
  2. td {padding:5px;}
  3. tr {border:1px solid}
  4. tr:hover{border-bottom:1px solid #fff}
  5. </head>
  6. <tr>
  7. <td>aaaa</td>
  8. <td>aaaa</td>
  9. </tr>
  10. <tr>
  11. <td>aaaa</td>
  12. <td>aaaa</td>
  13. </tr>
  14. <tr>
  15. <td>aaaa</td>
  16. <td>aaaa</td>
  17. </tr>
  18. </body>
  19. </html>

i odmawia współpracy, kiedy te własności dotyczą <tr> (działa kiedy zmieniam wszystko na <td>). Prawdopodobnie coś bardzo głupiego, tym niemniej nie mogę tego przeskoczyć...
2. IE?
D3X
corvus606, IE od wersji 7 obsługuje :hover poprawnie. Nie sądzę, żeby wspieranie IE6 miało jakikolwiek sens.
Przy okazji: nadawanie atrybutów onclick w html jest brzydkie. Masz jQuery, możesz użyć .on('click'), a w starszych wersjach .click() albo .bind('click').
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.