我认为在XML和HTML中不允许使用跨域标记。也许SGML允许它。但是在XML / HTML中,是否存在可能发生这种情况的有效和允许的情况?
类似的东西:
<p>This is <i>some <b>example</i> text</b> right here!</p>
这可能会产生如下输出:“这是一些示例 文字就在这里!”
(旁注:SO降价解析器显然可以处理它,谁知道?)
"This is *some **example* text** right here!"
答案 0 :(得分:2)
HTML或XML不允许这样做。有关处理非分层标记的方法的调查,维基百科文章是一个很好的起点:
答案 1 :(得分:1)
我认为在XML和HTML中不允许使用跨域标记。
正确
也许SGML允许它。
它没有。
在XML / HTML中,是否存在可能发生这种情况的有效且允许的情况?
没有。标记只描述了一个DOM,它是一个节点树。一个节点只能有一个父节点。
&#34;这是一些示例 文字就在这里!&#34;
呈现为:
<p>"This is <em>some <strong>example</strong></em><strong> text</strong> right here!"</p>
答案 2 :(得分:1)
这样的重叠标签只有在文本中只有标签才有可能。只要将文本解析为元素(HTML或XML),就无法表示这样的结构。
元素的概念是它是一个单一的实体,它不是文本的起点和终点。
正如您的SO降价示例所示,只要它只是文本中的标签,就可以使用这样的标签。正如Quentin所示,SO文本解析器必须将其转换为非重叠结构,以便能够为其创建有效的HTML代码。