Foros del Web » Creando para Internet » CSS »

juntar bordes en tablas (td) ?

Estas en el tema de juntar bordes en tablas (td) ? en el foro de CSS en Foros del Web. Buenas, estoy editando un poco mi web & tengo unos problemas con algunos códigos CSS o HTML, no sé que es. Les cuento, tengo una ...
  #1 (permalink)  
Antiguo 12/10/2012, 16:43
 
Fecha de Ingreso: junio-2009
Mensajes: 138
Antigüedad: 14 años, 10 meses
Puntos: 4
juntar bordes en tablas (td) ?

Buenas, estoy editando un poco mi web & tengo unos problemas con algunos códigos CSS o HTML, no sé que es.

Les cuento, tengo una tabla & a los td les puse bordes para que se vean mas 'bonitos' (En la imagen que dejare se ve mal, ya que es algo modular.)



Como se ve en la imagen, los bordes rojos están separados unos de otros & eso es lo que no quiero.. necesito que se vea un rectángulo sin cortes en medio.

Les dejo el html que uso, donde estoy usando style="" para lo que quiero:

Código HTML:
Ver original
  1. <table border="0" cellspacing="5" cellpadding="6">
  2.     <tbody>
  3.         <tr>
  4.             <td colspan="1" align="center" valign="top" width="1" style="border: 1px solid red; border-right: 0;"></td>
  5.             <td colspan="1" valign="top" style="border: 1px solid red; border-left: 0; border-right: 0;"></td>
  6.             <td width="85" valign="top" align="center" style="white-space: nowrap; border: 1px solid red; border-left: 0; border-right: 0;"></td>
  7.             <td width="200" valign="top" align="right" style="white-space: nowrap; border: 1px solid red; border-left: 0;"><div style="text-align: center;"></div></td>
  8.         </tr>
  9.     </tbody>

Que puedo hacer para evitar esos espacios?
  #2 (permalink)  
Antiguo 12/10/2012, 17:40
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: juntar bordes en tablas (td) ?

Tienes que colapsar los bordes a la tabla.

Código CSS:
Ver original
  1. border-collapse:collapse;

Y como consejo, no estaría mal que especificaras los atributos en un fichero CSS externo. Es más cómodo y rápido trabajar de esa forma.
__________________
(:
  #3 (permalink)  
Antiguo 12/10/2012, 17:45
 
Fecha de Ingreso: junio-2009
Mensajes: 138
Antigüedad: 14 años, 10 meses
Puntos: 4
Respuesta: juntar bordes en tablas (td) ?

Pero donde pongo lo del border-collapse, en el CSS?

Si estoy usando un CSS externo, solo que para editarlo lo hice así, luego lo paso a mi hoja de estilos.
  #4 (permalink)  
Antiguo 12/10/2012, 17:48
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: juntar bordes en tablas (td) ?

Se lo tienes que poner, como dije, a la tabla.
__________________
(:
  #5 (permalink)  
Antiguo 12/10/2012, 17:58
 
Fecha de Ingreso: junio-2009
Mensajes: 138
Antigüedad: 14 años, 10 meses
Puntos: 4
Respuesta: juntar bordes en tablas (td) ?

Pero si pongo lo que me dijiste se juntan todos, pero quiero que quede un espacio en cada <tr>.

Trate con margin-bottom, pero no funciona. Que puedo hacer en este caso?
  #6 (permalink)  
Antiguo 12/10/2012, 18:02
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: juntar bordes en tablas (td) ?

Podés hacer algo así

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">
  4. <title>titulo</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6.  
  7.  
  8. <style type="text/css">
  9. /*<![CDATA[*/
  10. table {
  11. border-collapse: separate;
  12. border-spacing: 0px 5px;
  13. background: blue;
  14. border-left: 3px solid blue;
  15. border-right: 3px solid blue;
  16. }
  17.  
  18. td{
  19. border-top: 2px solid #000;
  20. border-bottom: 2px solid #000;
  21. background: cyan;
  22. }
  23. /*]]>*/
  24. </head>
  25.     <p>tabla 1</p>
  26. <table cellspacing="0" cellpadding="6" id="uno">
  27.  
  28.         <tr class="fila">
  29.             <td colspan="1" align="center" valign="top" width="1">texto</td>
  30.             <td colspan="1" valign="top">texto</td>
  31.             <td width="85" valign="top" align="center">texto</td>
  32.             <td width="200" valign="top" align="right"><div style="text-align: center;">texto</div></td>
  33.         </tr>
  34.         <tr class="fila">
  35.             <td colspan="1" align="center" valign="top" width="1">texto</td>
  36.             <td colspan="1" valign="top">texto</td>
  37.             <td width="85" valign="top" align="center">texto</td>
  38.             <td width="200" valign="top" align="right"><div style="text-align: center;">texto</div></td>
  39.         </tr>
  40.  
  41. </body>
  42. </html>

faltaría que le des un borde izquierdo a la primer celda de cada fila y un derecho a la última

SAludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #7 (permalink)  
Antiguo 12/10/2012, 18:08
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: juntar bordes en tablas (td) ?

Fíjate tú, que no te entendí. Pues ya con lo de emprear vas servido.
__________________
(:
  #8 (permalink)  
Antiguo 12/10/2012, 18:17
Avatar de flashmax  
Fecha de Ingreso: julio-2012
Ubicación: Bs.As. Argentina
Mensajes: 507
Antigüedad: 11 años, 9 meses
Puntos: 86
Respuesta: juntar bordes en tablas (td) ?

hola no sera esto el problema <table border="0" cellspacing="5" cellpadding="6">
<table border="0" cellspacing="0" cellpadding="6">
__________________
Saludos!
----------------------------------------------------------
  #9 (permalink)  
Antiguo 12/10/2012, 18:45
Avatar de pzin
Moderata 😈
 
Fecha de Ingreso: julio-2002
Ubicación: Islas Canarias
Mensajes: 10.488
Antigüedad: 21 años, 8 meses
Puntos: 2114
Respuesta: juntar bordes en tablas (td) ?

Cita:
Iniciado por flashmax Ver Mensaje
hola no sera esto el problema <table border="0" cellspacing="5" cellpadding="6">
Es el problema pero también lo que busca. Quiere tener el espaciado en horizontal, pero no en vertical. De ahí el código de emprear.
__________________
(:
  #10 (permalink)  
Antiguo 12/10/2012, 19:10
 
Fecha de Ingreso: junio-2009
Mensajes: 138
Antigüedad: 14 años, 10 meses
Puntos: 4
Respuesta: juntar bordes en tablas (td) ?

Probé con todo lo que pusieron & aún lo sigo viendo de la misma manera :/

El código de emprear me dejo aún mas confundido con esto ><
  #11 (permalink)  
Antiguo 13/10/2012, 07:23
(Desactivado)
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ciudad Autónoma de Buenos Aires
Mensajes: 2.367
Antigüedad: 21 años, 5 meses
Puntos: 317
Respuesta: juntar bordes en tablas (td) ?

Es que te estás explicando para el tujes.

Pero me parece que ya adiviné. Y entonces tu pregunta se justifica, porque a pesar de que ya lo publicamos en este Foro, no mucha gente conoce el truco. De otra forma, te mandaría a aprender diseño web.

Código:
<!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Transitional//EN" 
"http://www.w3.org/TR/xhtml1/DTD/xhtml1-transitional.dtd">
<html xmlns="http://www.w3.org/1999/xhtml">
<head>
<title>TÍTULO</title> 
<meta http-equiv="content-type" content="text/html; charset=utf-8" />

</head>
<body>
    <p>tabla 1</p>

<table border="0" cellspacing="5" cellpadding="0" bgcolor="silver"  >
    <tbody>
        <tr style="border-collapse: collapse; border: 1px solid red; 
display: block; padding: 5px; ">
            <td align="center" valign="top" style="width: 30px; 
background-color: gray; empty-cells: show; ">
&nbsp;
</td>
            <td align="center" valign="top" style="width: 300px; background-color: lime; ">
<div style="background-color: black; text-align: center; width: 300px; 
margin-right: 40px; color: white; ">
div</div>
</td>
            <td align="center" valign="top" style="empty-cells: show; ">
<div style="background-color: yellow; text-align: center; ">
texto <br>celda</div> 
</td>
            <td align="center" valign="top" style="width: 30px; 
background-color: gray; empty-cells: show; ">
&nbsp;
</td>
        </tr>
        <tr style="border-collapse: collapse; border: 1px solid red; 
display: block; padding: 5px; margin-top: 5px; ">
            <td align="center" valign="top" style="width: 30px; 
background-color: gray; empty-cells: show; ">
&nbsp;
</td>
            <td align="center" valign="top" style="width: 300px; background-color: lime; ">
<div style="background-color: black; text-align: center; width: 300px; 
margin-right: 40px; color: white; ">
div</div>
</td>
            <td align="center" valign="top" style="empty-cells: show; ">
<div style="background-color: yellow; text-align: center; ">
texto <br>celda</div> 
</td>
            <td align="center" valign="top" style="width: 30px; 
background-color: gray; empty-cells: show; ">
&nbsp;
</td>
        </tr>
    </tbody>
</table>
 
</body>
</html>
Te marqué las celdas con distintos colores, para que podás seguir más fácil el diseño con el código.

Border en tr de tabla
  #12 (permalink)  
Antiguo 13/10/2012, 07:50
Avatar de emprear
Colaborador
 
Fecha de Ingreso: junio-2007
Ubicación: me mudé
Mensajes: 8.388
Antigüedad: 16 años, 10 meses
Puntos: 1567
Respuesta: juntar bordes en tablas (td) ?

Creo que aquí una vez más se aplica el viejo axioma

"El que no sabe lo que busca, no encuentra lo que necesita"

Mi código, que al parecer, confunde a nuestro amigo @Lokitozzz, no hace más que lo que el sugiere a través de la imagen, salvo claro está, esas manchas negras que vaya uno a saber que representan

A las pruebas me remito
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">
  4. <title>titulo</title>
  5. <meta http-equiv="content-type" content="text/html; charset=utf-8" />
  6.  
  7.  
  8. <style type="text/css">
  9. /*<![CDATA[*/
  10. table {
  11. border-collapse: separate;
  12. border-spacing: 0px 5px;
  13. background: #677A85;
  14. border-left: 5px solid #677A85;
  15. border-right: 5px solid #677A85;
  16. }
  17. td{
  18. border-top: 1px solid red;
  19. border-bottom: 1px solid red;
  20. height: 50px;
  21. }
  22. .inicio{
  23. border-left: 1px solid red;
  24. }
  25. .fin{
  26. border-right: 1px solid red;
  27. }
  28.  
  29. /*]]>*/
  30. </head>
  31.         <p>imagen</p>
  32.         <img src="http://i.imgur.com/n4GSp.png" alt="" width="900" />
  33.     <p>tabla</p>
  34. <table cellspacing="0" cellpadding="6" width="900">
  35.  
  36.         <tr class="fila">
  37.             <td colspan="1" align="center" valign="top" width="1" class="inicio">texto</td>
  38.             <td colspan="1" valign="top">texto</td>
  39.             <td width="85" valign="top" align="center">texto</td>
  40.             <td width="200" valign="top" align="right" class="fin"><div style="text-align: center;">texto</div></td>
  41.         </tr>
  42.         <tr class="fila">
  43.             <td colspan="1" align="center" valign="top" width="1" class="inicio">texto</td>
  44.             <td colspan="1" valign="top">texto</td>
  45.             <td width="85" valign="top" align="center">texto</td>
  46.             <td width="200" valign="top" align="right" class="fin"><div style="text-align: center;">texto</div></td>
  47.         </tr>
  48.         <tr class="fila">
  49.             <td colspan="1" align="center" valign="top" width="1" class="inicio">texto</td>
  50.             <td colspan="1" valign="top">texto</td>
  51.             <td width="85" valign="top" align="center">texto</td>
  52.             <td width="200" valign="top" align="right" class="fin"><div style="text-align: center;">texto</div></td>
  53.         </tr>
  54. </body>
  55. </html>

Saludos
__________________
La voz de las antenas va, sustituyendo a Dios.
Cuando finalice la mutación, nueva edad media habrá
S.R.
  #13 (permalink)  
Antiguo 13/10/2012, 08:23
(Desactivado)
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ciudad Autónoma de Buenos Aires
Mensajes: 2.367
Antigüedad: 21 años, 5 meses
Puntos: 317
Respuesta: juntar bordes en tablas (td) ?

Sí, justamente. En vez de mostrar lo que ya tiene en el código, podría editar la imagen y mostrar lo que está buscando. Así no tenemos que adivinar y tirar mil ideas.

Ya van 12 post, ¡y menos mal que aprovechamos para tirar esas (casi) mil ideas!; de otra forma sería otro tema olvidable.
  #14 (permalink)  
Antiguo 13/10/2012, 09:16
 
Fecha de Ingreso: junio-2009
Mensajes: 138
Antigüedad: 14 años, 10 meses
Puntos: 4
Respuesta: juntar bordes en tablas (td) ?

Gracias furoya y emprear, con los dos últimos códigos que pusieron logre lo que quería.

Lo de las manchas negras solo era para tapar el contenido, digamos que había un poco de spam y quise evitar eso.

Muchas gracias a los dos :D
  #15 (permalink)  
Antiguo 13/10/2012, 11:06
(Desactivado)
 
Fecha de Ingreso: noviembre-2002
Ubicación: Ciudad Autónoma de Buenos Aires
Mensajes: 2.367
Antigüedad: 21 años, 5 meses
Puntos: 317
Respuesta: juntar bordes en tablas (td) ?

De nada.

Y sí, al principio creí que esos rectángulos eran div's adentro de las celdas, hasta que me avivé que eran tachaduras. Supuse que detras habría publicidad.

Justamente por tomarte esa molestia, y por poner código adentro de etiquetas de código, fue que me decidí a acompañar a los amigos Bonez, flashmax y emprear.
  #16 (permalink)  
Antiguo 13/10/2012, 11:25
 
Fecha de Ingreso: junio-2009
Mensajes: 138
Antigüedad: 14 años, 10 meses
Puntos: 4
Respuesta: juntar bordes en tablas (td) ?

Ya luego de darle algo mas de estilo al table y todo me ha quedado así:



Y en vez de usar:

Código CSS:
Ver original
  1. .inicio{
  2.     border-left: 1px solid red;
  3. }
  4.  
  5. .fin{
  6.     border-right: 1px solid red;
  7. }

Use:

Código CSS:
Ver original
  1. td:first-child {
  2.     border-left: 1px solid red;
  3. }
  4.  
  5. td:last-child {
  6.     border-right: 1px solid red;
  7. }

Así se evita algo de código extra.

Saludos y gracias :D

Etiquetas: bordes, html, juntar, tablas
Atención: Estás leyendo un tema que no tiene actividad desde hace más de 6 MESES, te recomendamos abrir un Nuevo tema en lugar de responder al actual.
Respuesta




La zona horaria es GMT -6. Ahora son las 22:25.