Warning: file_get_contents(/data/phpspider/zhask/data//catemap/3/html/77.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
用插槽';中不允许的元素填充HTML模板插槽是否始终有效;谁的父母?_Html_Web Component_Shadow Dom_Custom Element - Fatal编程技术网

用插槽';中不允许的元素填充HTML模板插槽是否始终有效;谁的父母?

用插槽';中不允许的元素填充HTML模板插槽是否始终有效;谁的父母?,html,web-component,shadow-dom,custom-element,Html,Web Component,Shadow Dom,Custom Element,在MDN上的和中,他们使用以下模板: <template id="my-paragraph"> <p><slot name="my-text">My default text</slot></p> </template> 我的默认文本 然后像这样填充插槽: <my-paragraph> <ul slot="my-text"> <li>Let's have some

在MDN上的
中,他们使用以下模板:

<template id="my-paragraph">
    <p><slot name="my-text">My default text</slot></p>
</template>

我的默认文本

然后像这样填充插槽:

<my-paragraph>
  <ul slot="my-text">
    <li>Let's have some different text!</li>
    <li>In a list!</li>
  </ul>
</my-paragraph>

  • 让我们有一些不同的文本
  • 在列表中
这引起了我的注意,因为通常情况下,
不允许在
内。我一直在寻找关于这是否有效或可取的澄清,但没有找到任何解决办法


这样做是否有效和/或明智?是否存在任何不允许的子对象的实例,当它们是通过Shadow DOM间接生成的唯一子对象时,它们也是不允许的?

我目前的最佳猜测是,至少这个示例是完全正确的。
内部
的有效性问题严格来说与解析HTML标记有关,而不是文档结构;当你这样做的时候

<p><ul></ul></p>

当您开始列表时,解析器会直接隐式地关闭段落,验证器的抱怨是

实际上没有一个
。因此,唯一的实际问题是这两种结构是否分别良好:

<p><slot></slot></p>

<my-paragraph><ul></ul></my-paragraph>

    …他们当然是。但我很想知道这一类别中是否有任何其他元素组合会导致问题,或者我是否错过了解决这种情况的规范语言。

    规范中称之为“隐含结束标记”: