据我所知,这是正确的:
<div>
<p>some words</p>
</div>
但这是错误的:
<p>
<div>some words</div>
</p>
第一个可以通过 W3C 验证 程序 (XHTML 1.0),但第二个不能。我知道没有人会像第二个那样编写代码。我只想知道为什么。
那么其他标签的包含关系呢?
原文由 Henry H Miao 发布,翻译遵循 CC BY-SA 4.0 许可协议
据我所知,这是正确的:
<div>
<p>some words</p>
</div>
但这是错误的:
<p>
<div>some words</div>
</p>
第一个可以通过 W3C 验证 程序 (XHTML 1.0),但第二个不能。我知道没有人会像第二个那样编写代码。我只想知道为什么。
那么其他标签的包含关系呢?
原文由 Henry H Miao 发布,翻译遵循 CC BY-SA 4.0 许可协议
2 回答1.5k 阅读✓ 已解决
2 回答882 阅读✓ 已解决
1 回答1.1k 阅读✓ 已解决
1 回答899 阅读✓ 已解决
2 回答782 阅读
1 回答771 阅读✓ 已解决
2 回答1.1k 阅读
查找允许的包含关系的权威位置是 HTML 规范。例如,参见 http://www.w3.org/TR/html4/sgml/dtd.html 。它指定哪些元素是块元素,哪些是内联元素。对于这些列表,搜索标记为“HTML 内容模型”的部分。
对于P元素,它指定如下,表示P元素只允许包含行内元素。
这与 http://www.w3.org/TR/html401/struct/text.html#h-9.3.1 一致,其中指出 P 元素“不能包含块级元素(包括 P 本身)”。