文本溢出问题


Text overflow issue

我对此有点困惑,我确信这不是css的问题,因为将字符串输入到相同的容器中不会产生溢出。例句:

echo '<p class="text"> '. $comment .' This is just random text</p>';

$comment将在一行中显示数据库中的数据,这一行完全溢出了我的段落标签(这是相对位置,仅供参考),但"这只是随机文本"一旦段落宽度结束就会中断。$comment的数据类型只是phpmyadmin中的文本。

css:

.text {
position: relative;
left: 10%;
width: 80%;
line-height: 1;
color: #b1bbc3;
font-size: 0.90em;
font-family: 'Roboto', sans-serif;
font-weight: 400;
}

这只是一个列表标签。

有人有解决方案吗?经过进一步检查,当我检查页面源时,我注意到每当我使用$comments从数据库获得输出时,即使有echo(未包装在html标签中),我也可以看到包装在双引号中,这些双引号不在页面上显示,也不在数据库中显示。因为我选择了所有的评论,我不确定双引号是从哪里来的,或者它们是否导致了这个问题/我的查询是。

我的查询就像

一样简单
$sql = "SELECT comments FROM db WHERE username = '$username'";

有时,当文本没有换行时,是由于在应该使用空格或断行符的地方出现了意外字符。要测试输出的字符,请使用以下代码并验证内容是否符合预期。

<pre>
<?php
for ($i = 0; $i < strlen($comment); $i++) {
    echo $i . " " . bin2hex($comment[$i]) . " " . $comment[$i] . "'n";
}
?>
</pre>

这将垂直打印出字符串中的每个字符:

0 6f o
1 6e n
2 65 e
3 20  
4 74 t
5 77 w
6 6f o

空格将显示为20,新行为0d后面跟着0a,或者只是0a。