代码之家  ›  专栏  ›  技术社区  ›  ibz

HTML表格大于浏览器的窗口

  •  1
  • ibz  · 技术社区  · 17 年前

    <table>
      <tr>
        <td><nobr>hello</nobr></td>
        <td>this column can contain a lot of text, for some rows</td>
        <td><nobr>world</nobr></td>
        <td><nobr>hello world</nobr></td>
      </tr>
      ... more rows to come
    </table>
    

    基本上,其中3列有非常短的文本,我希望它们是 <nobr> . 另一个可以有很长的文本,我希望它占用所有剩余的空间。但实际情况是,为了容纳较大的列,表变得比整个浏览器窗口都大。如果文本是 真正地 虽然它最终会破裂,但它还是有点脱离了窗户。

    3 回复  |  直到 17 年前
        1
  •  3
  •   Narayan Raman    17 年前

    你的例子确实和Zyphrax说的一样好。

    只有在长列中有一个非常大的单词或内容中没有空格时,才会出现您报告的问题。是这样吗?可能是您正在使用的 &nbsp; 而不是空格,它阻止了浏览器自动执行的正常换行。

    如果列中的文本根本没有换行,则通常使用 &nbsp; 或者你忘了关窗户 <nobr>

    不确定这是否有帮助。

        2
  •  1
  •   Yvo    17 年前

    我刚刚把它放进了我的浏览器(试过IE8和Firefox)。它在浏览器窗口中保持良好:

    <html>
     <body>
      <table>
       <tr>
        <td><nobr>hello</nobr></td>
        <td>this column can contain a lot of text, for some rows.</td>
        <td><nobr>world</nobr></td>
        <td><nobr>hello world</nobr></td>
       </tr>
      </table>
     </body>
    </html>
    

    否则你可能会想试试像这样的把戏 宽度:100% 保证金:0自动; 在桌子上。

        3
  •  1
  •   Dan Diplo    17 年前

    你不应该使用nobr标签,它是 有效的HTML标记。使用“ white-space: nowrap “取而代之的是CSS。

    如。

    <td style="white-space:nowrap">your long text</td>