php - PHP 中的 HTML <pre> 自动换行不起作用

标签 php html css word-wrap

我一直在一个论坛上工作,我已经把所有的东西都按照它的方式工作了,我试着包装看看它是否有效,基本上那部分代码看起来像这样 在 PHP 之前我得到了一些 HTML 样式:

<style>
    pre {
        white-space: pre-wrap; 
        white-space: -moz-pre-wrap;
        white-space: -pre-wrap;
        white-space: -o-pre-wrap;
        word-wrap: break-word;    
        font-size: 20px;
        margin: 0% 8% 0px 8%; 
    }
</style>

然后在一堆MySQL的东西之后

echo '<table style="height: 21px;" width="100%">';
while($forumcomrow=mysqli_fetch_array($forumcomres))
{
    echo '<tr><td>some text</td><td><pre>Some Very Long Text From Mysql </pre></td></tr></br>';
}
echo '</table>';

我删除了所有内容,只保留了它的样式和表格的回显,当我只回显 pre 标签时,它会将它包装在屏幕的末尾,但是一旦我把它放在表格中(大小没关系,即使我将表格的宽度设置为 5px)它仍然会离开屏幕 10 英里,直到它开始换行。

是这样的:

This is what happens

在上面的图片中,您可以看到它的一部分,但是文本超出屏幕的长度大约是您在那里可以看到的长度的 5 倍,然后才开始换行

我已经弄清楚是什么给它带来了问题,如果它有空格(“aaaa aaa aaa aa aa”)它会换行但如果它是一个长单词(“aaaaaaaaa”)它不会换行,我不知道如何解决它,我刚刚找出导致问题的原因。

最佳答案

是因为<br>最后的标签,我前段时间遇到了同样的问题。 <br>每次都首先应用,然后包装表格。

删除 <br> 最后

echo '<tr><td>some text</td><td><pre>Some Very Long Text From Mysql </pre></td></tr>';

然后它将完美运行。

关于php - PHP 中的 HTML <pre> 自动换行不起作用,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43300975/

相关文章:

html - 将文本对齐到复选框和中心按钮的右侧

php - 从 Zend 中的表中选择完全匹配的列...?

javascript - 如何在 javascript 中使用 php 变量

php - 将 PHP 查询字符串分隔符更改为 "#"以与 $_GET 一起使用?

javascript - 我需要添加一个条件语句来将 css 高度链接到下拉选择 (jQuery)

javascript - 使用 javascript 控制 css 过渡

php - Ratchet:应该手动通过 "php"命令让它作为服务器运行吗?

html - div 高度相对于 div 内的某个数值

javascript - 使用 JavaScript 创建媒体查询

javascript - 从 html 调用时未定义导入的 Javascript 函数