我注意到浏览器如何解释以下代码的奇怪行为:
<h2>Maecenas aliquet lorem id urna vehicula</h2>
<p>
<ul class="liststyle">
<li>Curabitur</li>
<li>Pharetra</li>
<li>Convallis</li>
</ul>
</p>
当我尝试给这个样式时,我尝试了以下选择器:
p li {
font-family: Verdana, sans-serif;
font-size: 14px;
}
我知道更好的选择是“ul li”,但我的选择器(p li)应该可以工作,但事实并非如此,所以在Chrome和Firefox中查看开发人员工具,这就是他们解释代码的方式:
<p>
</p>
<ul class="liststyle">
<li>Curabitur</li>
<li>Pharetra</li>
<li>Convallis</li>
</ul>
<p></p>
唯一的区别是Chrome还会显示我尝试解决问题的实体(&amp; nbsp;),但仍会创建两个段落。我正在寻找这种现象的解释。感谢。
答案 0 :(得分:7)
段落可能不包含块级元素。有些浏览器显然认为你犯了一个错误,并试图纠正它。
<强> Read more 强>
答案 1 :(得分:4)
您的问题是,根据网络标准,<p>
标记内不应包含块元素。