从字符串中调整大小

时间:2011-02-22 21:56:08

标签: php html database

我不确定这是HTML相关问题还是PHP,但是:

我正在从数据库中将长字符串加载到标记中。我想让它在加载字符串时使其分成几行(相反,如果是跨越屏幕大小的巨行)。我怎样才能做到这一点?

3 个答案:

答案 0 :(得分:0)

结合PHP的wordwrap()nl2br()函数来限制行大小,然后将wordwrap()生成的换行符转换为HTML <br />

echo nl2br(wordwrap($alongstring, 72));

不确定这会如何影响问题标题中提到的<td>标记。你是怎么用的?

答案 1 :(得分:0)

使用<p></p>标记来包含您尝试加载的文本,并使用CSS来约束它的大小。

另外,除非您正在加载应以表格格式显示的数据,否则我会对表的使用提出质疑。

除非你绝对必须,否则我也会避免在PHP方面做出任何格式化决定。使用PHP自动将<br>标记添加到所有内容,或使用<br>标记来强制执行页面宽度是一种非常糟糕的方法。如果他们调整浏览器窗口大小或更改文本高度(可访问性),则强制格式化将会妨碍。

根据浏览器的不同,TD标签内容会变得奇怪。如果你可以避免使用表格,我会从那里开始。如果没有,则将文本包含在另一个块元素中,例如<p>,可能会阻止它将<td>拉伸到一行,特别是如果在{{1}上使用width: 100%这样的CSS样式}}。一般情况下,如果可以帮助,PHP应该执行 no 格式化,HTML + CSS应该完成其余的工作。在尝试布局页面时,表格是一个糟糕的选择,应该用<p>标签和适当的CSS替换,唯一的例外是以表格格式显示的数据,例如数据表。

答案 2 :(得分:0)

如果为容器设置宽度,除非在CSS中添加white-space:nowrap;,否则它会在文本到达容器末尾时自动换行。