我的 html 代码有一个奇怪的问题。
我想添加一个变量 $htmlstring
到 <p>
标签。
我愿意
$finalHtml .= '<p class="text">'.$htmlString.'</p>';
我的 $htmlstring
包含类似的东西
<span>texts….</span>
<span>texts….</span>
<span>texts….</span>
<span>texts….</span>
<span>texts….</span>
<table>
<tr>
<td>cell</td>
<td>cell</td>
<td>cell</td>
</tr>
more….
</table>
<span>more texts</span>
<span>more texts</span>
我希望我的结果变成这样
<p class='text'>
<span>texts….</span>
<span>texts….</span>
<span>texts….</span>
<span>texts….</span>
<span>texts….</span>
<table>
<tr>
<td>cell</td>
<td>cell</td>
<td>cell</td>
</tr>
more….
</table>
<span>more texts</span>
<span>more texts</span>
</p>
但是我得到了
//p tag only wraps texts before my table element.
<p class='text'>
<span>texts….</span>
<span>texts….</span>
<span>texts….</span>
<span>texts….</span>
<span>texts….</span>
</p>
<table>
<tr>
<td>cell</td>
<td>cell</td>
<td>cell</td>
</tr>
more….
</table>
<span>more texts</span>
<span>more texts</span>
谁能帮我解决这个奇怪的问题?非常感谢!
最佳答案
那是因为 p
不能容纳 block
元素(table
)。
使用 div
代替您的 p
段落。
关于php - PHP 和 html 标记的奇怪问题,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18665775/