段落内部锚点内的数字:在HTML5中是合法的吗?

Jum*_*ton 1 html html5

根据HTML5规范,您可以在块中嵌套块级元素.

<a>
  <article></article>
</a>
Run Code Online (Sandbox Code Playgroud)

但是在段落中嵌套块级元素是不合法的,因为p标签只能包含内联元素.

所以,这里有一个矛盾:

<p> <!-- block-level; can only contain inline elements -->
  <a> <!-- inline element; can contain block-level elements -->
    <figure></figure> <!-- block-level; can be nested in <a> but not <p> -->
  </a>
</p>
Run Code Online (Sandbox Code Playgroud)

以上块在HTML5中是否合法?

Que*_*tin 8

根据HTML5规范,您可以在块中嵌套块级元素.

不完全的.

规范说的是:

内容模型:
透明,但必须没有交互式内容后代.

透明意味着元素可以包含其父元素可以包含的任何内容.因此,如果锚的父级可以具有块级子级,则锚也可以.如果父母不能,那么也不能锚.

在您的示例中,段落只能包含Phrasing内容,并且不包含图形元素,因此该示例无效.