我有一个从MySQL表中提取数据的PHP页面。一个字段(内容)包含要在页面上填充的HTML。当尝试在段落标记内插入记录时,结果以段落标记开头和结尾,但不能正确插入子元素,而是作为兄弟插入。谁能在这里看到这个问题?
HTML / PHP
<?php
foreach ($pages as $page) {
?>
<div class="slide" id="about-content">
<h1 class="pic-title"><?=$page->title;?></h1>
<p class="pic-caption overlay">
<?=$page->content;?>
</p>
</div>
<?php
}
?>
输出HTML:
<div class="fp-tableCell" style="height:419px;">
<h1 class="pic-title" style="margin-left: 25px;">Splash Page 2</h1>
<p class="pic-caption overlay" style="display: block;">
</p>
<p>dfajdfn<strong>akdjfnas</strong></p>
<p></p>
</div>
MySQL数据:
<p>dfajdfn<strong>akdjfnas</strong></p>
我似乎无法追踪这一个。谢谢!
答案 0 :(得分:2)
这是预期的,您在另一个<p>
内插入<p>
。您可以不嵌套段落,并且在段落内部开始新段落将终止先前的段落。
e.g。
<p>foo
<p>bar
<p>baz
将在内部生成
<p>foo</p>
<p>bar</p>
<p>baz</p>
在DOM树中。
您应该转而使用<div>
代替:
<div class="pic-caption overlay">
^^^---
<?=$page->content;?>
</div>
^^^