Tema: tbody scroll
Ver Mensaje Individual
  #4 (permalink)  
Antiguo 11/10/2010, 12:00
Avatar de emprear
emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 17 años, 6 meses
Puntos: 1567
Respuesta: tbody scroll

DarkWater:

Como dijo abimaelrc, vas a tener que recurrir a un div, pero en el código que te paso vas a necesitar posicionar el div , ya sea con absolute o fixed

Por otra parte, dependiendo del texto de las celdas, requriras un ajuste preciso, para respetar el ancho de las celdas de la tabla superior que actuán como encabezados de la tabla de contenido.

Te dejo un código, para solucionar eso, compatible con FF,IE,Opera, Chrome y Safari
Código HTML:
Ver original
  1. <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN"
  2. "http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
  3. <html xmlns="http://www.w3.org/1999/xhtml" xml:lang="es" lang="es" >
  4. <title>Tabla con Scroll CrossBrowser</title>
  5. <meta http-equiv="Content-Type" content="text/html; charset=utf-8" />
  6. <meta http-equiv="Content-Language" content="ES" />
  7. <meta name="copyright" content="&copy; 2006, Guillermo Gianello" xml:lang="es" lang="es" />
  8. <meta name="author" content="http://emprear.com"  xml:lang="es" lang="es" />
  9.  
  10. <style type="text/css">
  11. /*<![CDATA[*/
  12.  
  13. div {
  14. height: 100px;
  15. overflow: auto;
  16. overflow-y: auto;
  17. overflow-x: hidden;
  18. width: 515px;
  19. border-bottom: solid 1px #000;
  20. border-right: solid 1px #000;
  21. }
  22.  
  23. table {
  24. background-color: #EFEFEF;
  25. color: black;
  26. table-layout: fixed;
  27. width: 500px;
  28. }
  29.  
  30. table.titulos {
  31. width: 500px;
  32. }
  33.  
  34. th, td {
  35. border: 1px solid black;
  36. padding: 4px;
  37. white-space: pre; /* CSS 2.0 */
  38. white-space: pre-wrap; /* CSS 2.1 */
  39. white-space: pre-line; /* CSS 3.0 */
  40. white-space: -pre-wrap; /* Opera 4-6 */
  41. white-space: -o-pre-wrap; /* Opera 7 */
  42. white-space: -moz-pre-wrap; /* Mozilla */
  43. white-space: -hp-pre-wrap; /* HP */
  44. word-wrap: break-word; /* IE 5+ */
  45. }
  46.  
  47. tr.headers {
  48. background-color: #E9B61B;
  49. }
  50.  
  51. /*]]>*/
  52. </head>
  53.  
  54. <table class="titulos" width="500">
  55. <tr class="headers">
  56. <th>Condiciones</th>
  57. <th>Especificaciones y manual del Usuario</th>
  58. <th>Referencia del Producto</th>
  59. <th>Soporte</th>
  60. </tr>
  61.  
  62. <div>
  63. <table width="500">
  64.  
  65. <tr>
  66. <td>Atttes klsakdl lkdlkslk lklkllkl asklasd lkdlkl alkd alkdl al lad laklklkl adklak lkdlklakd</td>
  67. <td>xxxxxxxx</td>
  68. <td>xxxxxx</td>
  69. <td>xxxxxxx</td>
  70. </tr>
  71.  
  72. <tr>
  73. <td>xxxxxxxx 888</td>
  74. <td>xxxxxxxx DDDD </td>
  75. <td>xxxxxxxxxxx SSSSS</td>
  76. <td>xxxxxxx</td>
  77. </tr>
  78.  
  79. <tr>
  80. <td>xxxxx</td>
  81. <td>xxxxxx</td>
  82. <td>xxxxxxxxx</td>
  83. <td>xxxxxxxxxxx</td>
  84. </tr>
  85.  
  86. <tr>
  87. <td>xxxxxxxxxxxxxxxxxxx</td>
  88. <td>xxxxxx xxxxxxxxxx</td>
  89. <td>x xxxxxxxxxxxxxxxxxxxxxx</td>
  90. <td>xxxxxxxxxx xxxxxxxxxxxxx</td>
  91. </tr>
  92.  
  93. <tr>
  94. <td>xxxxxxxxxxxxxxxxxx</td>
  95. <td>xxxxxxxxxxxxxxxxx</td>
  96. <td>xxxxxxxxxx xxxxxxxxxxxxx</td>
  97. <td>xxxxxx xxxxxxxxxxxxxxxxxxx</td>
  98. </tr>
  99.  
  100. <tr>
  101. <td>x666688 888</td>
  102. <td>xxxxxxxxxxxxxxxxxxxxx</td>
  103. <td>xxxxxxxxxxxxxxxxxxxxxxxxx</td>
  104. <td>xxxxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxxx xxx</td>
  105. </tr>
  106.  
  107. <tr>
  108. <td>xxxxxxxxx xxxxxxxxxxxxx</td>
  109. <td>xxxxxxxxxxxxxxxx xxxxxxxxxxxxxxxxxxxx</td>
  110. <td>xxxxx xxxxxxxxxxxxxxxxxx xxxxxxxxxx</td>
  111. <td>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</td>
  112. </tr>
  113.  
  114. <tr>
  115. <td>rrrr</td>
  116. <td>x.rrrrrr</td>
  117. <td>RRRR fff x</td>
  118. <td>xxxxxxxx xxxxxxxxxxxxxxxxxxxxxxxx xxxxx</td>
  119. </tr>
  120.  
  121. <tr>
  122. <td>ppp yyyy TTT rrrr</td>
  123. <td>222 aaaaaaa sssss</td>
  124. <td>xxxxxxxxxxxxxxxxxxxxxxxxxxxxxx</td>
  125. <td>xxxxxxxxxxxxxxxxxxxxxxxxxx</td>
  126. </tr>
  127.  
  128. <tr>
  129. <td>555 666 888989 000000  99999</td>
  130. <td>x.offsetParent</td>
  131. <td>xxxxxxxx xxxxxxxxxxxxx</td>
  132. <td>xxxx xxxxxxxxxxxxxxx xxxxxx</td>
  133. </tr>
  134.  
  135. <tr>
  136. <td>www mmm dsk kkk</td>
  137. <td>aaa aaaa xxxx aaaa</td>
  138. <td>xxxxxxx xxxxxxxxxx xxxxxxxxx</td>
  139. <td>xxxxxxxxxxxxx xxxxxxxxxxxxxx</td>
  140. </tr>
  141.  
  142. </div>
  143.  
  144. </body>
  145. </html>

Podés hacer que la barra de scroll quede por fuera, como en el ejemplo, o por dentro, haciendo el ancho del div igual al de la tabla

Una demo en

http://foros.emprear.com/html/tbody_scroll2.html

Saludos


Me alucina !!!
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.