html - 带有可选 </p> 关闭的 IE9 错误

标签 html css internet-explorer-9

我在 IE9 中试过这段代码,没想到它因为缺少 </p> 而被搞砸了标题后。

live demo

<style>
#MyForm div {
    width: 200px;
    height: 30px;
    float: left;
}
</style>
<div>
    <p><b>Login</b>
    <form id="MyForm" action="test.html">
        <div>
            <label>My Email</label>
            <input />
        </div>
        <div>
            <label>My Password</label>
            <input type="password">
        </div>
    </form>
</div>

这是一个错误还是我的问题?

更新

根据 W3C, block 级元素在“p”标签内是无效的

<P>
    <DIV>...</DIV>
</P>

但关闭<p>是可选的标记为,

<p>content block 1
<p>content block 2
<p>content block 3
<form> ..... </form>

这似乎是有效的。 block 元素应自动关闭 <p>如果它没有像第一个示例那样明确关闭。

最佳答案

这确实是一个 IE9 错误。

在做了更多测试(并在表单中添加了一些 <span> 之后),在 IE9 标准模式下,IE9 似乎无法识别 <form> is not allowed作为 <p> 的后代但确实认识到 <div>也是不允许的。

因此,它将元素作为 p 元素节点的后代插入,直到它遇到第一个 <div>。 , 此时它终止 <form> <p>然后在表单之后插入表单正文的其余部分。

当遇到</form>时它将它视为非开放元素的结束标记并忽略它。

关于html - 带有可选 </p> 关闭的 IE9 错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7692565/

相关文章:

html - Bootstrap header 修复

javascript - 注入(inject)时 Jquery 对话框无法正确显示

javascript - 鼠标悬停在图像上闪烁

javascript - IE9是否完全兼容extJS2.2

css - Google Web 字体 - 在 IE9 和 10 中呈现不佳

javascript - 脚本中的 Angular <div> 颜色变化

javascript - 使用javascript提供不同格式的音频文件

javascript - 设置 html 表格中每行的列数限制

JavaScript 在 Mac 和 PC 上表现不同?我知道不应该

html - html5音频mp3路径不适用于IE9