【问题标题】:Line break not working as expected换行符未按预期工作
【发布时间】:2017-01-17 20:47:53
【问题描述】:

我正在使用 API 来显示有关用户的信息。

当我尝试为演示目的实现换行符以便将信息显示在另一个信息下方时,它无法正常工作,我似乎无法确定这种意外行为的原因。

图片如下:

如您所见,IDGroup 都显示在同一行。

这是我的代码:

<td>ID:</td><td><strong /> ' . $data['response']['id'] . '</td><br/>
<td>Group:</td><td><strong />' . $data['response']['groupName'];</td>

【问题讨论】:

  • 你为什么要使用break?如果你使用td,你正在制作一张桌子。您使用&lt;tr&gt;(即行)进行中断。
  • 尝试使用 &lt;tr&gt; 开始新行,而不是 &lt;br&gt;
  • &lt;tr&gt; 中不能有任何不在 &lt;td&gt;&lt;th&gt; 中的内容。

标签: php html line-breaks


【解决方案1】:

您正在使用一张桌子。如果您希望br 将文本放在下一行,则文本需要位于同一表格单元格中。将您的标记更改为:

<td>ID:<strong /> ' . $data['response']['id'] . '<br/>Group:<strong />' . $data['response']['groupName']</td>;

或者你根本不能使用 br,而只是添加一个新的表格行:

<tr><td>ID:</td><td><strong /> ' . $data['response']['id'] . '</td></tr>
<tr><td>Group:</td><td><strong />' . $data['response']['groupName'].'</td></tr>'; 

【讨论】:

  • 您好,谢谢,我在尝试将图像从 api 显示到图像框时遇到问题如何使用 src 显示它?名字叫头像
  • 我无法在没有看到代码的情况下判断,但您应该能够在 html 中附加位置。尽管您需要确保路径正确。另一件事是,在以这种方式生成 html 时,您应该小心,因为可能会在您的页面上进行 XSS 攻击。您应该对数据进行转义/编码,以防止恶意 html/js 出现在您的页面上。
  • xss 将来自您正在使用的组或图像源。例如,如果$data['response']['groupName']&lt;script&gt;alert("xss attack");&lt;/script&gt;,则将执行 javascript,允许某人访问您用户的浏览器。 owasp.org/index.php/Cross-site_Scripting_%28XSS%29
  • 但我使用的是 ssl。 cloudflare,很快 drupal 他们不会再次使用 xss 保护吗?那么我怎样才能安全地显示图像呢?
  • 当您通过文本连接将文本附加到 html 中时,您希望确保字符串中的任何 html 都不会呈现到页面。我只是想在这方面提醒你,因为我不知道你从哪里得到文本,所以除此之外我无话可说。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 2012-10-31
  • 1970-01-01
  • 2015-02-22
  • 1970-01-01
  • 1970-01-01
  • 2016-11-28
  • 1970-01-01
相关资源
最近更新 更多