如何防止表格单元格(而不是单个单元格)列中的换行符?

我怎样才能防止一列表(不是一个单元格)的自动换行符?

您可以使用CSS样式的空格:

white-space: nowrap; 

为了完成,

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

用于将样式应用于the table_id表的2列。

这是由所有主要的浏览器支持,IE浏览器从IE9开始支持这一点。

使用nowrap风格:

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

这是CSS!

有几种方法可以做到这一点; 没有一个是简单明了的方式。

将white-space:nowrap应用到<col>将不起作用; 只有四个CSS属性可用于<col>元素 – 背景颜色,宽度,边框和可见性。 IE7和更早的版本用来支持所有的属性,但这是因为他们使用了一个奇怪的表模型。 IE8现在与其他人相匹配。

那么,你如何解决这个问题呢?

那么,如果你可以忽略IE(包括IE8),你可以使用:nth-child()伪类从每一行中select特定的<td> 。 你会使用td:nth-child(2) { white-space:nowrap; } td:nth-child(2) { white-space:nowrap; } 。 (这适用于这个例子,但是如果涉及到任何rowpans或colspans,将会中断。)

如果你必须支持IE,那么你必须走很长的路,并为你想影响的每一个<td>应用一个类。 这很糟糕,但他们是rest时间。

从长远来看,有人build议在CSS中解决这个问题,这样就可以更方便地将样式应用于列中的所有单元格。 你可以做一些像td:nth-col(2) { white-space:nowrap; } td:nth-col(2) { white-space:nowrap; }它会做你想要的。

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

我相信nowrap属性已被弃用。 以上是首选的方法。

在文本中放入非空格而不是普通空格。 在Ubuntu上,我使用(Compose Key) – 空格来实现这个function。

要将其应用于整个表格,您可以将其放置在table标签中:

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