我正在使用 HTML5 自定义元素来创建可能被称为“丰富的脚注”(基本上是小的鼠标悬停框)。标记看起来像
<p>
Socrates is a
<x-info>
<x-text>
man
</x-text>
<x-planation>
<p>What is a man? Here are some examples of men:</p>
<ul>
<li>Bill Clinton</li>
<li>Aristotle</li>
</ul>
</x-planation>
</x-info>, therefore Socrates is mortal
</p>
这应该呈现类似
苏格拉底是人,所以苏格拉底是必死的
这样当您将鼠标悬停在man一词上时,该框就会出现。<x-info>
当仅包含内联元素时,这可以正常工作。但是,在上面的示例中,HTML 解析器对我将<p>
s 和<ul>
s 嵌套在 another中感到愤怒<p>
,并破坏了标记,使其呈现得更像
苏格拉底是人
什么是男人?以下是一些男性的例子:
- 比尔·克林顿
- 亚里士多德
,因此苏格拉底是必死的
有没有办法解决这个问题?我想避免更改标记结构,这有点超出我的控制(否则,我将不得不在后端对其进行预处理)。