¿Cómo evitar el salto de línea en una columna de una celda de tabla (no una sola celda)?


170

¿Cómo puedo evitar saltos de línea automáticos en una columna de la tabla (no una sola celda)?


1
Por favor seleccione una respuesta! ... demasiado tarde ahora, supongo
Jaeeun Lee

Respuestas:


258

Puede usar el espacio en blanco de estilo CSS:

white-space: nowrap;

44
Quiero evitar el salto de línea en una columna de una tabla, no en una sola celda.
Steven

11
Entonces, ¿agregarlo a cada celda de la columna?
David M

Agregue una clase a cada celda td a la que desea que se aplique, si no desea que se aplique a cada celda de la tabla, sino solo a las específicas.
James Black

Quiero aplicarlo a todas las celdas de la misma columna.
Steven

77
Puede aplicar esta regla junto con el enésimo selector secundario css-tricks.com/how-nth-child-works
Zach Lysobey

36

Para completar el bien:

#table_id td:nth-child(2)  {white-space: nowrap;}

Se utiliza para aplicar un estilo a la columna 2 de la the table_idtabla.

Esto es compatible con todos los principales navegadores, IE comenzó a admitir esto desde IE9 en adelante.


19

Usa el estilo de nowrap:

<td style="white-space:nowrap;">...</td>

¡Es CSS!


Quiero evitar el salto de línea en todas las celdas de la misma columna.
Steven

18

Solo agrega

style="white-space:nowrap;"

Ejemplo:

<table class="blueTable" style="white-space:nowrap;">
   <tr>
      <td>My name is good</td>
    </tr>
 </table>

¿No se aplicaría esto a toda la tabla (es decir, TODAS las columnas) y no solo a una columna individual?
Joshua Pinter

15

Hay algunas formas de hacer esto; ninguno de ellos es la manera fácil y obvia.

Aplicando espacios en blanco: nowrap a a <col>no funciona; solo cuatro propiedades CSS funcionan en <col>elementos: color de fondo, ancho, borde y visibilidad. IE7 y versiones anteriores solían admitir todas las propiedades, pero eso se debe a que usaron un modelo de tabla extraño. IE8 ahora coincide con todos los demás.

Entonces, ¿cómo resuelves esto?

Bueno, si puede ignorar IE (incluido IE8), puede usar el :nth-child() pseudoclase para seleccionar <td>s particulares de cada fila. Tendrá que utilizar td:nth-child(2) { white-space:nowrap; }. (Esto funciona para este ejemplo, pero se rompería si tuvieras algún espacio en filas o colspans involucrado).

Si tiene que admitir IE, entonces debe recorrer el camino más largo y aplicar una clase a todo lo <td>que quiera afectar. Es una mierda, pero son los descansos.

A la larga, hay propuestas para corregir esta falta en CSS, de modo que pueda aplicar estilos más fácilmente a todas las celdas de una columna. Podrá hacer algo como td:nth-col(2) { white-space:nowrap; }y haría lo que quiera.


13
<td style="white-space: nowrap">

El nowrapatributo que creo está en desuso. Lo anterior es la forma preferida.


6
<table class="blueTable">
  <tr>
     <td>My name is good</td>
   </tr>
</table> 
<style>   
    table.blueTable td,
    table.blueTable th {
        white-space: nowrap;
        /* non-question related further styling */
        border: 1px solid #AAAAAA;
        padding: 3px 2px;
        text-align: left;
    }
</style>

Este es un ejemplo de uso de la propiedad de espacio en blanco con valor nowrap, la tabla azul es la clase de la tabla, debajo de la tabla están los estilos CSS.


5

Pon espacios sin interrupción en tu texto en lugar de espacios normales. En Ubuntu hago esto con (Compose Key) -space-space.


5

Para aplicarlo a toda la tabla, puede colocarlo dentro de la tableetiqueta:

<table style="white-space:nowrap;">

Al usar nuestro sitio, usted reconoce que ha leído y comprende nuestra Política de Cookies y Política de Privacidad.
Licensed under cc by-sa 3.0 with attribution required.