在表中使用“自动换行:断词”[重复]

Posted

技术标签:

【中文标题】在表中使用“自动换行:断词”[重复]【英文标题】:Using "word-wrap: break-word" within a table [duplicate] 【发布时间】:2011-08-18 20:54:59 【问题描述】:

可能重复:Word-wrap in a html table

此文本在 Google Chrome(和其他现代浏览器)上的行为完全符合我的要求:

<div style="border: 1px solid black; width:100%; word-wrap: break-word;">
  <p>
    aaaaaaaaaaaaaaaa
    bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
  </p>
</div>

    当浏览器足够宽时,a+ 和 b+ 在同一行。

    aaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
    

    当您缩小浏览器时,a+ 和 b+ 被放在不同的行上。

    aaaaaaaaaaaaaaaa
    bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
    

    当 b+ 放不下时,将其折断并放在两行(总共三行)。

    aaaaaaaaaaaaaaaa
    bbbbbbbbbbbbbbbbbbbbbbbb
    bbbbbbbb
    

这一切都很好。

然而,在我的情况下,这不是div,而是table,就像这样:

<table style="border:1px solid black; width:100%; word-wrap:break-word;">
  <tr>
    <td>
      <p>
        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
        bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
      </p>
    </td>
  </tr>
</table>

在这种情况下,#1 和 #2 发生,而不是 #3。也就是说,表格在第 2 步之后停止缩小,并且第 3 步永远不会发生。断词似乎没有被过滤掉。

有人知道#3 是如何发生的吗?该解决方案只需要在 Chrome 中工作,但它也可以在其他更好的浏览器中工作。

附: “不要使用表格”没有帮助。

【问题讨论】:

有趣的问题,以前没见过。尽管这个主题似乎提出了一个类似(相同?)的问题:***.com/questions/1258416/word-wrap-in-a-html-table 这里和其他地方有很多关于相关问题的讨论。围绕这个问题肯定有很多困惑和很多浏览器不兼容问题。 推荐使用 CSS perishablepress.com/wrapping-content包装长 URL 和文本内容 【参考方案1】:

你可以试试这个:

td p word-break:break-all;

然而,当有足够的空间时,这会让它看起来像这样,除非你添加一个&lt;br&gt;标签:

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb

所以,如果可能的话,我建议在有换行符的地方添加&lt;br&gt; 标签。

aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb

http://jsfiddle.net/LLyH3/3/

另外,如果这不能解决你的问题,有一个类似的帖子here。

【讨论】:

【参考方案2】:

table-layout: fixed 将强制单元格适合表格(而不是相反),例如:

<table style="border: 1px solid black; width: 100%; word-wrap:break-word;
              table-layout: fixed;">
  <tr>
    <td>
        aaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaaa
        bbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbbb
    </td>
  </tr>
</table>

【讨论】:

注意,使用table-layout: fixed,您将失去表格的“动态列宽”功能 - 所有列都将设置为相同的大小。

以上是关于在表中使用“自动换行:断词”[重复]的主要内容,如果未能解决你的问题,请参考以下文章

使用PK标识列在表中插入期间AS400 DB2重复键错误

在表中使用 calc() [重复]

使用 Mysql 和 PHP 在表中汇总 [重复]

我试图在表中插入数据,但数据未存储在表中[重复]

我的 pdo 结果在表中重复

在表中添加新行[重复]