如果在破解单词失败时如何让全部破解?

时间:2016-06-08 14:54:39

标签: html css html-table

标题为。

可能与Extbase Model: setSysLanguageUid not working类似,但答案并未解决我的问题。

示例:

| --<td style="width:100px">(example)-- |
|                                       |
| Example 1:                            |
| something long something something something | <- this line should break into below:
|                                       |
| something long something something    |
| something                             | <- when break at word is possible
|                                       |
|                                       |
| Example 2:                            |
| somethinglongsomethingsomethingsomethingsomething | <- this line should break into below:
|                                       |
| somethinglongsomethingsomethingsometh |
| ingsomething                          | <- when break at word is not possible

好像我可以使用break-wordbreak-all

对于break-word,示例1有效,但示例2会拉伸表格,无论我是否在表格中设置table-layout: fixed

对于break-all,示例2可以正常工作,但示例1也会破坏这个词。

是否有任何聪明的方法让桌子只在必须时才会破坏这个词?

1 个答案:

答案 0 :(得分:1)

没有直接的HTML或CSS方法来执行此操作。

然而,您可能会过度使用并使用JavaScript解决方案。一种策略:估计适合表格cel的一行中的最大字符数,在表格cel中搜索长于该数字的单个单词的字符串,并在单词中插入<wbr>标记(或者将其连字,或者在那一点上添加空格等。

$('td').each(function() {
  var contents = $(this).html();
  contents = contents.replace(/(\w{25})/g,"$1<wbr>");
  $(this).html(contents);
  });
td {border:1px solid; max-width: 15em;}
<script src="https://ajax.googleapis.com/ajax/libs/jquery/2.1.1/jquery.min.js"></script>
<table>
  <tr>
    <td>This has short words</td>
  </tr>
  <tr>
    <td>This has a long word: bababadalgharaghtakamminarronnkonnbronntonnerronntuonnthunntrovarrhounawnskawntoohoohoordenenthurnuk!</td>
  </tr>
  </table>