2009-07-18 3 views
1

У меня есть что-то вроде этого:HTML таблица больше, чем окно браузера

<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>. У другого может быть очень длинный текст, и я хочу, чтобы он взял все оставшееся пространство. Но происходит то, что таблица становится больше, чем все окно браузера, чтобы разместить большой столбец. Если текст действительно большой, он в конечном итоге сломается, но он все равно немного за пределами окна.

Я пробовал установить ширину, максимальную ширину, но не повезло. Что я делаю не так?

+0

Можете ли вы представить пример реального мира? – janhartmann

+0

В каком браузере вы видите проблему? – random

+0

@Random Echo Firefox. @meep Это точно мой пример. – ibz

ответ

3

Ваш пример определенно ведет себя хорошо, как говорит Зифракс.

Проблема, о которой вы сообщаете, может произойти только в том случае, если в длинном столбце есть очень большое слово или содержимое не имеет пробелов. Это так? Может быть, вы используете &nbsp; вместо пробелов, и это предотвращает обычный перенос, который браузеры делают автоматически.

Если текст в колонке не обертывается вообще, в основном вы используете &nbsp; или вы забыли закрыть <nobr>.

Не уверен, что это помогает.

+0

Вы правы. В одном из моих строк было огромное «слово» (без пробелов). Я этого не видел, так как он был далеко внизу в моем столе. Благодаря! – ibz

1

Я просто бросил это в свой браузер (попробовал как 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 авто; на столе.

1

Вы не должны использовать тег nobr, это не действительный тег HTML. Вместо этого используйте «white-space: nowrap».

например.

<td style="white-space:nowrap">your long text</td> 
Смежные вопросы